<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>intel-ipsec-mb: intel-ipsec-mb.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">intel-ipsec-mb<span id="projectnumber">&#160;v2.0</span>
   </div>
   <div id="projectbrief">Documentation of the Intel(R) IPSec Multi-Buffer library</div>
  </td>
    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
          <input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('intel-ipsec-mb_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">intel-ipsec-mb.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;stdint.h&gt;</code><br />
<code>#include &lt;errno.h&gt;</code><br />
</div>
<p><a href="intel-ipsec-mb_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structimb__uint128__t.html">imb_uint128_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structIMB__SGL__IOV.html">IMB_SGL_IOV</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structIMB__JOB.html">IMB_JOB</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structkasumi__key__sched__s.html">kasumi_key_sched_s</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgcm__context__data.html">gcm_context_data</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">holds GCM operation context  <a href="structgcm__context__data.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">holds Chacha20-Poly1305 operation context  <a href="structchacha20__poly1305__context__data.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgcm__key__data.html">gcm_key_data</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">holds intermediate key data needed to improve performance  <a href="structgcm__key__data.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsnow3g__key__schedule__s.html">snow3g_key_schedule_s</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structIMB__SELF__TEST__CALLBACK__DATA.html">IMB_SELF_TEST_CALLBACK_DATA</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structIMB__MGR.html">IMB_MGR</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ad920a47ed8f57af8b2cf6bcd18a3e41c" id="r_ad920a47ed8f57af8b2cf6bcd18a3e41c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad920a47ed8f57af8b2cf6bcd18a3e41c">DECLARE_ALIGNED</a>(decl,  alignval)&#160;&#160;&#160;__declspec(align(alignval)) decl</td></tr>
<tr class="separator:ad920a47ed8f57af8b2cf6bcd18a3e41c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af93b819ac40799ac392e16f6a90729fd" id="r_af93b819ac40799ac392e16f6a90729fd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af93b819ac40799ac392e16f6a90729fd">__forceinline</a>&#160;&#160;&#160;static __forceinline</td></tr>
<tr class="separator:af93b819ac40799ac392e16f6a90729fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a986643689f56109161597f67eb9d7b40" id="r_a986643689f56109161597f67eb9d7b40"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a></td></tr>
<tr class="separator:a986643689f56109161597f67eb9d7b40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a479e22216a6be5645af96c4b1433339e" id="r_a479e22216a6be5645af96c4b1433339e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a479e22216a6be5645af96c4b1433339e">IMB_DLL_LOCAL</a></td></tr>
<tr class="separator:a479e22216a6be5645af96c4b1433339e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a874972638400dafdb542319d61bfbfbc" id="r_a874972638400dafdb542319d61bfbfbc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a874972638400dafdb542319d61bfbfbc">IMB_VERSION_STR</a>&#160;&#160;&#160;&quot;2.0.0&quot;</td></tr>
<tr class="separator:a874972638400dafdb542319d61bfbfbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a415abfc6067c0b1663a508993a4eb0d4" id="r_a415abfc6067c0b1663a508993a4eb0d4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a415abfc6067c0b1663a508993a4eb0d4">IMB_VERSION_NUM</a>&#160;&#160;&#160;0x20000</td></tr>
<tr class="separator:a415abfc6067c0b1663a508993a4eb0d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9bcb21181d1e07b4f66d8bf0514c1a3" id="r_ad9bcb21181d1e07b4f66d8bf0514c1a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad9bcb21181d1e07b4f66d8bf0514c1a3">IMB_VERSION</a>(a,  b,  c)&#160;&#160;&#160;(((a) &lt;&lt; 16) + ((b) &lt;&lt; 8) + (c))</td></tr>
<tr class="separator:ad9bcb21181d1e07b4f66d8bf0514c1a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0f2f0bfad62f740bc2e22e60f48af8d" id="r_af0f2f0bfad62f740bc2e22e60f48af8d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af0f2f0bfad62f740bc2e22e60f48af8d">IMB_ASSERT</a>(x)</td></tr>
<tr class="separator:af0f2f0bfad62f740bc2e22e60f48af8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1beec59f9694a41c22b6b099263c070d" id="r_a1beec59f9694a41c22b6b099263c070d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1beec59f9694a41c22b6b099263c070d">IMB_DIM</a>(x)&#160;&#160;&#160;(sizeof(x) / sizeof(x[0]))</td></tr>
<tr class="separator:a1beec59f9694a41c22b6b099263c070d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d156b1b9d715299e08cca76e790e2b7" id="r_a7d156b1b9d715299e08cca76e790e2b7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7d156b1b9d715299e08cca76e790e2b7">IMB_DES_KEY_SCHED_SIZE</a>&#160;&#160;&#160;(16 * 8)</td></tr>
<tr class="separator:a7d156b1b9d715299e08cca76e790e2b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95f4ece0b318cb36bdbe66089d9ef649" id="r_a95f4ece0b318cb36bdbe66089d9ef649"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a95f4ece0b318cb36bdbe66089d9ef649">IMB_DES_BLOCK_SIZE</a>&#160;&#160;&#160;8</td></tr>
<tr class="separator:a95f4ece0b318cb36bdbe66089d9ef649"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1b5db5ac58714b6f69e754a0c4ca793" id="r_ab1b5db5ac58714b6f69e754a0c4ca793"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab1b5db5ac58714b6f69e754a0c4ca793">IMB_AES_BLOCK_SIZE</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:ab1b5db5ac58714b6f69e754a0c4ca793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9846bc9e4fb7c61de7c231e9fec5179d" id="r_a9846bc9e4fb7c61de7c231e9fec5179d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9846bc9e4fb7c61de7c231e9fec5179d">IMB_SM4_BLOCK_SIZE</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a9846bc9e4fb7c61de7c231e9fec5179d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c821d8cf5520f6f46e9b835eeeb2066" id="r_a8c821d8cf5520f6f46e9b835eeeb2066"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8c821d8cf5520f6f46e9b835eeeb2066">IMB_SHA1_DIGEST_SIZE_IN_BYTES</a>&#160;&#160;&#160;20</td></tr>
<tr class="separator:a8c821d8cf5520f6f46e9b835eeeb2066"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a836641341e86b80f67716eabdf4a64c5" id="r_a836641341e86b80f67716eabdf4a64c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a836641341e86b80f67716eabdf4a64c5">IMB_SHA224_DIGEST_SIZE_IN_BYTES</a>&#160;&#160;&#160;28</td></tr>
<tr class="separator:a836641341e86b80f67716eabdf4a64c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bc9eee15ba0ce09f545af8916292731" id="r_a4bc9eee15ba0ce09f545af8916292731"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4bc9eee15ba0ce09f545af8916292731">IMB_SHA256_DIGEST_SIZE_IN_BYTES</a>&#160;&#160;&#160;32</td></tr>
<tr class="separator:a4bc9eee15ba0ce09f545af8916292731"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2538a5e82141eb5a54f78660241e186c" id="r_a2538a5e82141eb5a54f78660241e186c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2538a5e82141eb5a54f78660241e186c">IMB_SHA384_DIGEST_SIZE_IN_BYTES</a>&#160;&#160;&#160;48</td></tr>
<tr class="separator:a2538a5e82141eb5a54f78660241e186c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9efcf370f0db0b21f7cf4a3b72eec53e" id="r_a9efcf370f0db0b21f7cf4a3b72eec53e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9efcf370f0db0b21f7cf4a3b72eec53e">IMB_SHA512_DIGEST_SIZE_IN_BYTES</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:a9efcf370f0db0b21f7cf4a3b72eec53e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a472528903f010fe2c365d1ff23565eaa" id="r_a472528903f010fe2c365d1ff23565eaa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a472528903f010fe2c365d1ff23565eaa">IMB_MD5_DIGEST_SIZE_IN_BYTES</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a472528903f010fe2c365d1ff23565eaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af19fd9d6768e33720cab4ecd9aabad91" id="r_af19fd9d6768e33720cab4ecd9aabad91"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af19fd9d6768e33720cab4ecd9aabad91">IMB_SHA1_BLOCK_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:af19fd9d6768e33720cab4ecd9aabad91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c912b7543122de6f05355fa4848eb83" id="r_a7c912b7543122de6f05355fa4848eb83"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7c912b7543122de6f05355fa4848eb83">IMB_SHA_224_BLOCK_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:a7c912b7543122de6f05355fa4848eb83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7eed0159b050f8d78cddcc78b4b941ef" id="r_a7eed0159b050f8d78cddcc78b4b941ef"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7eed0159b050f8d78cddcc78b4b941ef">IMB_SHA_256_BLOCK_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:a7eed0159b050f8d78cddcc78b4b941ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a256cc0f9eaba38030ca3f7589e479855" id="r_a256cc0f9eaba38030ca3f7589e479855"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a256cc0f9eaba38030ca3f7589e479855">IMB_SHA_384_BLOCK_SIZE</a>&#160;&#160;&#160;128</td></tr>
<tr class="separator:a256cc0f9eaba38030ca3f7589e479855"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4141433b17ade98e14a585e0409cb62d" id="r_a4141433b17ade98e14a585e0409cb62d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4141433b17ade98e14a585e0409cb62d">IMB_SHA_512_BLOCK_SIZE</a>&#160;&#160;&#160;128</td></tr>
<tr class="separator:a4141433b17ade98e14a585e0409cb62d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a567100ef1c32f08b9e75e1fb378171a3" id="r_a567100ef1c32f08b9e75e1fb378171a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a567100ef1c32f08b9e75e1fb378171a3">IMB_MD5_BLOCK_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:a567100ef1c32f08b9e75e1fb378171a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46d59512e3a7254e54018181b7a31102" id="r_a46d59512e3a7254e54018181b7a31102"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a46d59512e3a7254e54018181b7a31102">IMB_KASUMI_KEY_SIZE</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a46d59512e3a7254e54018181b7a31102"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf7e13e43c6bb30489d0e26f11e39440" id="r_adf7e13e43c6bb30489d0e26f11e39440"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adf7e13e43c6bb30489d0e26f11e39440">IMB_KASUMI_IV_SIZE</a>&#160;&#160;&#160;8</td></tr>
<tr class="separator:adf7e13e43c6bb30489d0e26f11e39440"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa31ca303e03fc548199f95e5335889e1" id="r_aa31ca303e03fc548199f95e5335889e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa31ca303e03fc548199f95e5335889e1">IMB_KASUMI_BLOCK_SIZE</a>&#160;&#160;&#160;8</td></tr>
<tr class="separator:aa31ca303e03fc548199f95e5335889e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56bd44d01c91469b57efa36f360a83bf" id="r_a56bd44d01c91469b57efa36f360a83bf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a56bd44d01c91469b57efa36f360a83bf">IMB_KASUMI_DIGEST_SIZE</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a56bd44d01c91469b57efa36f360a83bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a053b0646f055d7ee3be974bb2bfe534b" id="r_a053b0646f055d7ee3be974bb2bfe534b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a053b0646f055d7ee3be974bb2bfe534b">IMB_ZUC_KEY_LEN_IN_BYTES</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a053b0646f055d7ee3be974bb2bfe534b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaacb0749fd75d1133414685b5694652d" id="r_aaacb0749fd75d1133414685b5694652d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aaacb0749fd75d1133414685b5694652d">IMB_ZUC_IV_LEN_IN_BYTES</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:aaacb0749fd75d1133414685b5694652d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35d04f4dc107531e37fcab1fd5efbf93" id="r_a35d04f4dc107531e37fcab1fd5efbf93"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a35d04f4dc107531e37fcab1fd5efbf93">IMB_ZUC256_KEY_LEN_IN_BYTES</a>&#160;&#160;&#160;32</td></tr>
<tr class="separator:a35d04f4dc107531e37fcab1fd5efbf93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18e1733291bb917240ef117f52c6aa6c" id="r_a18e1733291bb917240ef117f52c6aa6c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a18e1733291bb917240ef117f52c6aa6c">IMB_ZUC256_IV_LEN_IN_BYTES_MIN</a>&#160;&#160;&#160;23</td></tr>
<tr class="separator:a18e1733291bb917240ef117f52c6aa6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ab93cc1831b961f3d04ff913f63b832" id="r_a5ab93cc1831b961f3d04ff913f63b832"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5ab93cc1831b961f3d04ff913f63b832">IMB_ZUC256_IV_LEN_IN_BYTES_MAX</a>&#160;&#160;&#160;25</td></tr>
<tr class="separator:a5ab93cc1831b961f3d04ff913f63b832"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbb9f3bfdc1d416c20a579eb3a8b0b8f" id="r_adbb9f3bfdc1d416c20a579eb3a8b0b8f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adbb9f3bfdc1d416c20a579eb3a8b0b8f">IMB_ZUC_DIGEST_LEN_IN_BYTES</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:adbb9f3bfdc1d416c20a579eb3a8b0b8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dc24506ef16ad090414608c762b3d3c" id="r_a3dc24506ef16ad090414608c762b3d3c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3dc24506ef16ad090414608c762b3d3c">IMB_ZUC256_DIGEST_LEN_IN_BYTES_MIN</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a3dc24506ef16ad090414608c762b3d3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b1faea7079fa3ddb2cabeb41aeb2a0a" id="r_a2b1faea7079fa3ddb2cabeb41aeb2a0a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2b1faea7079fa3ddb2cabeb41aeb2a0a">IMB_ZUC256_DIGEST_LEN_IN_BYTES_MAX</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a2b1faea7079fa3ddb2cabeb41aeb2a0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f5a1efb7da9f6b2436e95c5c89bd6ae" id="r_a5f5a1efb7da9f6b2436e95c5c89bd6ae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5f5a1efb7da9f6b2436e95c5c89bd6ae">IMB_SNOW3G_DIGEST_LEN</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a5f5a1efb7da9f6b2436e95c5c89bd6ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d9cbb917f8117631939faa3d04c912d" id="r_a5d9cbb917f8117631939faa3d04c912d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5d9cbb917f8117631939faa3d04c912d">IMB_SNOW3G_IV_LEN_IN_BYTES</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a5d9cbb917f8117631939faa3d04c912d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35ecd17fd04c0db20a1281ad7e497595" id="r_a35ecd17fd04c0db20a1281ad7e497595"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a35ecd17fd04c0db20a1281ad7e497595">IMB_SM3_DIGEST_SIZE</a>&#160;&#160;&#160;32</td></tr>
<tr class="separator:a35ecd17fd04c0db20a1281ad7e497595"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12f4db6d32e538899734a938a55cc9d3" id="r_a12f4db6d32e538899734a938a55cc9d3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a12f4db6d32e538899734a938a55cc9d3">IMB_SM3_BLOCK_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:a12f4db6d32e538899734a938a55cc9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3260a6651abb0c37dc6558770966d582" id="r_a3260a6651abb0c37dc6558770966d582"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3260a6651abb0c37dc6558770966d582">IMB_CHACHA20_POLY1305_KEY_SIZE</a>&#160;&#160;&#160;32</td></tr>
<tr class="separator:a3260a6651abb0c37dc6558770966d582"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a682613e829c603f3c328f7fd6813d6ff" id="r_a682613e829c603f3c328f7fd6813d6ff"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a682613e829c603f3c328f7fd6813d6ff">IMB_CHACHA20_POLY1305_IV_SIZE</a>&#160;&#160;&#160;12</td></tr>
<tr class="separator:a682613e829c603f3c328f7fd6813d6ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a603f272890d272f0bbd467ee8c632452" id="r_a603f272890d272f0bbd467ee8c632452"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a603f272890d272f0bbd467ee8c632452">IMB_POLY1305_BLOCK_SIZE</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a603f272890d272f0bbd467ee8c632452"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74dca2bb8b0c87dec90f3b985c0266af" id="r_a74dca2bb8b0c87dec90f3b985c0266af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a74dca2bb8b0c87dec90f3b985c0266af">IMB_DOCSIS_CRC32_MIN_ETH_PDU_SIZE</a>&#160;&#160;&#160;14</td></tr>
<tr class="separator:a74dca2bb8b0c87dec90f3b985c0266af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59c620471ea8c9577ed593127f82c758" id="r_a59c620471ea8c9577ed593127f82c758"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a59c620471ea8c9577ed593127f82c758">IMB_DOCSIS_CRC32_TAG_SIZE</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a59c620471ea8c9577ed593127f82c758"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a071e04977525b67c8d1accc60937eb67" id="r_a071e04977525b67c8d1accc60937eb67"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a071e04977525b67c8d1accc60937eb67">KASUMI_KEY_SCHEDULE_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="separator:a071e04977525b67c8d1accc60937eb67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59def6ed420a4ef91ce4a6562cc2c4d5" id="r_a59def6ed420a4ef91ce4a6562cc2c4d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a59def6ed420a4ef91ce4a6562cc2c4d5">IMB_GCM_BLOCK_LEN</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a59def6ed420a4ef91ce4a6562cc2c4d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfc1e6216c0a6e42ba10d05c7614480c" id="r_adfc1e6216c0a6e42ba10d05c7614480c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adfc1e6216c0a6e42ba10d05c7614480c">IMB_SM4_KEY_SCHEDULE_ROUNDS</a>&#160;&#160;&#160;32</td></tr>
<tr class="separator:adfc1e6216c0a6e42ba10d05c7614480c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41087ea6dce2e096ebb02a613600c2ed" id="r_a41087ea6dce2e096ebb02a613600c2ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a41087ea6dce2e096ebb02a613600c2ed">IMB_MAX_TAG_LEN</a>&#160;&#160;&#160;(64)</td></tr>
<tr class="separator:a41087ea6dce2e096ebb02a613600c2ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87884da318b3013893b725d047b53702" id="r_a87884da318b3013893b725d047b53702"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a87884da318b3013893b725d047b53702">IMB_GCM_IV_DATA_LEN</a>&#160;&#160;&#160;(12)</td></tr>
<tr class="separator:a87884da318b3013893b725d047b53702"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae97681c203afbd818a39fb797613a232" id="r_ae97681c203afbd818a39fb797613a232"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae97681c203afbd818a39fb797613a232">IMB_GCM_128_KEY_LEN</a>&#160;&#160;&#160;(16)</td></tr>
<tr class="separator:ae97681c203afbd818a39fb797613a232"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7201a0be67f1e6f3757169b0166dd47d" id="r_a7201a0be67f1e6f3757169b0166dd47d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7201a0be67f1e6f3757169b0166dd47d">IMB_GCM_192_KEY_LEN</a>&#160;&#160;&#160;(24)</td></tr>
<tr class="separator:a7201a0be67f1e6f3757169b0166dd47d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c4c40ec87c2354832f5b182b22d2111" id="r_a4c4c40ec87c2354832f5b182b22d2111"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4c4c40ec87c2354832f5b182b22d2111">IMB_GCM_256_KEY_LEN</a>&#160;&#160;&#160;(32)</td></tr>
<tr class="separator:a4c4c40ec87c2354832f5b182b22d2111"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c6f54ab6663187fa401c766a981a41e" id="r_a0c6f54ab6663187fa401c766a981a41e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0c6f54ab6663187fa401c766a981a41e">IMB_GCM_ENC_KEY_LEN</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a0c6f54ab6663187fa401c766a981a41e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73715b8c1ba918ce6d5c21749841b47b" id="r_a73715b8c1ba918ce6d5c21749841b47b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a73715b8c1ba918ce6d5c21749841b47b">IMB_GCM_KEY_SETS</a>&#160;&#160;&#160;(15)</td></tr>
<tr class="separator:a73715b8c1ba918ce6d5c21749841b47b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a270311268c29ce07cffa688042b1855a" id="r_a270311268c29ce07cffa688042b1855a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a270311268c29ce07cffa688042b1855a">IMB_GCM_MAX_LEN</a>&#160;&#160;&#160;UINT64_C((((1ULL &lt;&lt; 39) - 256) / 8) - 1)</td></tr>
<tr class="separator:a270311268c29ce07cffa688042b1855a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef05a0c3b069c6076a3f1255582b3e38" id="r_aef05a0c3b069c6076a3f1255582b3e38"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aef05a0c3b069c6076a3f1255582b3e38">IMB_CHACHA20_POLY1305_MAX_LEN</a>&#160;&#160;&#160;UINT64_C((1ULL &lt;&lt; 38) - 64)</td></tr>
<tr class="separator:aef05a0c3b069c6076a3f1255582b3e38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96511040da293d22903654658b02e0e3" id="r_a96511040da293d22903654658b02e0e3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a96511040da293d22903654658b02e0e3">IMB_CCM_AAD_MAX_SIZE</a>&#160;&#160;&#160;(46) /* Maximum CCM AAD size */</td></tr>
<tr class="separator:a96511040da293d22903654658b02e0e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d45fcff99a9ea952b4dd6ef70e36e0c" id="r_a3d45fcff99a9ea952b4dd6ef70e36e0c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3d45fcff99a9ea952b4dd6ef70e36e0c">IMB_FLAG_SHANI_OFF</a>&#160;&#160;&#160;(1ULL &lt;&lt; 0)</td></tr>
<tr class="separator:a3d45fcff99a9ea952b4dd6ef70e36e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3faac9d03a87621ae02c10337b4edf8" id="r_ad3faac9d03a87621ae02c10337b4edf8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad3faac9d03a87621ae02c10337b4edf8">IMB_FLAG_GFNI_OFF</a>&#160;&#160;&#160;(1ULL &lt;&lt; 1)</td></tr>
<tr class="separator:ad3faac9d03a87621ae02c10337b4edf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb9c15eabfb9bafeb15a06886fa91e90" id="r_acb9c15eabfb9bafeb15a06886fa91e90"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#acb9c15eabfb9bafeb15a06886fa91e90">IMB_FEATURE_SHANI</a>&#160;&#160;&#160;(1ULL &lt;&lt; 0)</td></tr>
<tr class="separator:acb9c15eabfb9bafeb15a06886fa91e90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19c147087d2ae918baa22f90fa9b3b05" id="r_a19c147087d2ae918baa22f90fa9b3b05"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a19c147087d2ae918baa22f90fa9b3b05">IMB_FEATURE_AESNI</a>&#160;&#160;&#160;(1ULL &lt;&lt; 1)</td></tr>
<tr class="separator:a19c147087d2ae918baa22f90fa9b3b05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1af54a4a862936a6793af2ff44163ba5" id="r_a1af54a4a862936a6793af2ff44163ba5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1af54a4a862936a6793af2ff44163ba5">IMB_FEATURE_PCLMULQDQ</a>&#160;&#160;&#160;(1ULL &lt;&lt; 2)</td></tr>
<tr class="separator:a1af54a4a862936a6793af2ff44163ba5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5eef394935c651931b1cf560f31c841c" id="r_a5eef394935c651931b1cf560f31c841c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5eef394935c651931b1cf560f31c841c">IMB_FEATURE_CMOV</a>&#160;&#160;&#160;(1ULL &lt;&lt; 3)</td></tr>
<tr class="separator:a5eef394935c651931b1cf560f31c841c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcc243fc505aca3eac6963eff25e9b99" id="r_abcc243fc505aca3eac6963eff25e9b99"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abcc243fc505aca3eac6963eff25e9b99">IMB_FEATURE_SSE4_2</a>&#160;&#160;&#160;(1ULL &lt;&lt; 4)</td></tr>
<tr class="separator:abcc243fc505aca3eac6963eff25e9b99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7af992d12b4f9a6e789384969a066056" id="r_a7af992d12b4f9a6e789384969a066056"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7af992d12b4f9a6e789384969a066056">IMB_FEATURE_AVX</a>&#160;&#160;&#160;(1ULL &lt;&lt; 5)</td></tr>
<tr class="separator:a7af992d12b4f9a6e789384969a066056"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a225e2cd9c1445795fc62879eabad2530" id="r_a225e2cd9c1445795fc62879eabad2530"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a225e2cd9c1445795fc62879eabad2530">IMB_FEATURE_AVX2</a>&#160;&#160;&#160;(1ULL &lt;&lt; 6)</td></tr>
<tr class="separator:a225e2cd9c1445795fc62879eabad2530"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab673c08624d868ca0dd89e1a9ec28f00" id="r_ab673c08624d868ca0dd89e1a9ec28f00"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab673c08624d868ca0dd89e1a9ec28f00">IMB_FEATURE_AVX512F</a>&#160;&#160;&#160;(1ULL &lt;&lt; 7)</td></tr>
<tr class="separator:ab673c08624d868ca0dd89e1a9ec28f00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ca2c970faa0f62a3f4a6b6c18432bb1" id="r_a8ca2c970faa0f62a3f4a6b6c18432bb1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8ca2c970faa0f62a3f4a6b6c18432bb1">IMB_FEATURE_AVX512DQ</a>&#160;&#160;&#160;(1ULL &lt;&lt; 8)</td></tr>
<tr class="separator:a8ca2c970faa0f62a3f4a6b6c18432bb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbdb390b80ff1a92f31a7a9adc9beeb9" id="r_abbdb390b80ff1a92f31a7a9adc9beeb9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abbdb390b80ff1a92f31a7a9adc9beeb9">IMB_FEATURE_AVX512CD</a>&#160;&#160;&#160;(1ULL &lt;&lt; 9)</td></tr>
<tr class="separator:abbdb390b80ff1a92f31a7a9adc9beeb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00caae81d425acb6b946bebb25ac267f" id="r_a00caae81d425acb6b946bebb25ac267f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a00caae81d425acb6b946bebb25ac267f">IMB_FEATURE_AVX512BW</a>&#160;&#160;&#160;(1ULL &lt;&lt; 10)</td></tr>
<tr class="separator:a00caae81d425acb6b946bebb25ac267f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a803871900c08e2dc1b3f805ed4ecefd8" id="r_a803871900c08e2dc1b3f805ed4ecefd8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a803871900c08e2dc1b3f805ed4ecefd8">IMB_FEATURE_AVX512VL</a>&#160;&#160;&#160;(1ULL &lt;&lt; 11)</td></tr>
<tr class="separator:a803871900c08e2dc1b3f805ed4ecefd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6d6e3427c81b278d64f0189401c4964" id="r_ae6d6e3427c81b278d64f0189401c4964"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae6d6e3427c81b278d64f0189401c4964">IMB_FEATURE_AVX512_SKX</a></td></tr>
<tr class="separator:ae6d6e3427c81b278d64f0189401c4964"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4321e4e3c947f9b9fb7f204aaecf2c3" id="r_af4321e4e3c947f9b9fb7f204aaecf2c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af4321e4e3c947f9b9fb7f204aaecf2c3">IMB_FEATURE_VAES</a>&#160;&#160;&#160;(1ULL &lt;&lt; 12)</td></tr>
<tr class="separator:af4321e4e3c947f9b9fb7f204aaecf2c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a153d695ecd1af69a0d23385a50654614" id="r_a153d695ecd1af69a0d23385a50654614"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a153d695ecd1af69a0d23385a50654614">IMB_FEATURE_VPCLMULQDQ</a>&#160;&#160;&#160;(1ULL &lt;&lt; 13)</td></tr>
<tr class="separator:a153d695ecd1af69a0d23385a50654614"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd58fdbe1f1ef53cf509a0b37ba8aa4b" id="r_abd58fdbe1f1ef53cf509a0b37ba8aa4b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abd58fdbe1f1ef53cf509a0b37ba8aa4b">IMB_FEATURE_SAFE_DATA</a>&#160;&#160;&#160;(1ULL &lt;&lt; 14)</td></tr>
<tr class="separator:abd58fdbe1f1ef53cf509a0b37ba8aa4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e9506dc72ab4e6a2af463238ccb3080" id="r_a4e9506dc72ab4e6a2af463238ccb3080"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4e9506dc72ab4e6a2af463238ccb3080">IMB_FEATURE_SAFE_PARAM</a>&#160;&#160;&#160;(1ULL &lt;&lt; 15)</td></tr>
<tr class="separator:a4e9506dc72ab4e6a2af463238ccb3080"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa67ab4088ac2f8cadbe839101d276567" id="r_aa67ab4088ac2f8cadbe839101d276567"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa67ab4088ac2f8cadbe839101d276567">IMB_FEATURE_GFNI</a>&#160;&#160;&#160;(1ULL &lt;&lt; 16)</td></tr>
<tr class="separator:aa67ab4088ac2f8cadbe839101d276567"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0134dfaffe12427a8f2182247c6f1f48" id="r_a0134dfaffe12427a8f2182247c6f1f48"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0134dfaffe12427a8f2182247c6f1f48">IMB_FEATURE_AVX512_IFMA</a>&#160;&#160;&#160;(1ULL &lt;&lt; 17)</td></tr>
<tr class="separator:a0134dfaffe12427a8f2182247c6f1f48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a557f3de4bcc0bd7e9bd90e5e1d1b9b09" id="r_a557f3de4bcc0bd7e9bd90e5e1d1b9b09"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a557f3de4bcc0bd7e9bd90e5e1d1b9b09">IMB_FEATURE_BMI2</a>&#160;&#160;&#160;(1ULL &lt;&lt; 18)</td></tr>
<tr class="separator:a557f3de4bcc0bd7e9bd90e5e1d1b9b09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b4181547ded3ff17859d2632c468151" id="r_a8b4181547ded3ff17859d2632c468151"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8b4181547ded3ff17859d2632c468151">IMB_FEATURE_SELF_TEST</a>&#160;&#160;&#160;(1ULL &lt;&lt; 19) /* self-test feature present */</td></tr>
<tr class="separator:a8b4181547ded3ff17859d2632c468151"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a673b969c5f01579f6ca0a6b003cf1197" id="r_a673b969c5f01579f6ca0a6b003cf1197"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a673b969c5f01579f6ca0a6b003cf1197">IMB_FEATURE_SELF_TEST_PASS</a>&#160;&#160;&#160;(1ULL &lt;&lt; 20) /* self-test passed */</td></tr>
<tr class="separator:a673b969c5f01579f6ca0a6b003cf1197"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a946f162ff5e363d04f8b44d2f48747" id="r_a8a946f162ff5e363d04f8b44d2f48747"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8a946f162ff5e363d04f8b44d2f48747">IMB_FEATURE_AVX_IFMA</a>&#160;&#160;&#160;(1ULL &lt;&lt; 21)</td></tr>
<tr class="separator:a8a946f162ff5e363d04f8b44d2f48747"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bbaab5c0bc3aca1454b66bf2500150f" id="r_a6bbaab5c0bc3aca1454b66bf2500150f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6bbaab5c0bc3aca1454b66bf2500150f">IMB_FEATURE_HYBRID</a>&#160;&#160;&#160;(1ULL &lt;&lt; 22) /* Hybrid core */</td></tr>
<tr class="separator:a6bbaab5c0bc3aca1454b66bf2500150f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42db17ecba592d31b3476e69eaa731c1" id="r_a42db17ecba592d31b3476e69eaa731c1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a42db17ecba592d31b3476e69eaa731c1">IMB_FEATURE_SM3NI</a>&#160;&#160;&#160;(1ULL &lt;&lt; 23)</td></tr>
<tr class="separator:a42db17ecba592d31b3476e69eaa731c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a893592aaa79eee3a42f62ac0fec31892" id="r_a893592aaa79eee3a42f62ac0fec31892"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a893592aaa79eee3a42f62ac0fec31892">IMB_FEATURE_SM4NI</a>&#160;&#160;&#160;(1ULL &lt;&lt; 24)</td></tr>
<tr class="separator:a893592aaa79eee3a42f62ac0fec31892"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a5a4178425ed5ed19368bbcd6dec799" id="r_a3a5a4178425ed5ed19368bbcd6dec799"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3a5a4178425ed5ed19368bbcd6dec799">IMB_FEATURE_SHA512NI</a>&#160;&#160;&#160;(1ULL &lt;&lt; 25)</td></tr>
<tr class="separator:a3a5a4178425ed5ed19368bbcd6dec799"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8159849ff1ccdc72382877cb596a55f" id="r_af8159849ff1ccdc72382877cb596a55f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af8159849ff1ccdc72382877cb596a55f">IMB_FEATURE_XSAVE</a>&#160;&#160;&#160;(1ULL &lt;&lt; 26)</td></tr>
<tr class="separator:af8159849ff1ccdc72382877cb596a55f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a060ddf13837acb6d94bb927c8e73a74f" id="r_a060ddf13837acb6d94bb927c8e73a74f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a060ddf13837acb6d94bb927c8e73a74f">IMB_FEATURE_OSXSAVE</a>&#160;&#160;&#160;(1ULL &lt;&lt; 27) /* OS-enabled XSAVE */</td></tr>
<tr class="separator:a060ddf13837acb6d94bb927c8e73a74f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99801c5d8203aeaf6bf08e67e491f69b" id="r_a99801c5d8203aeaf6bf08e67e491f69b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a99801c5d8203aeaf6bf08e67e491f69b">IMB_SELF_TEST_PHASE_START</a>&#160;&#160;&#160;&quot;START&quot;</td></tr>
<tr class="separator:a99801c5d8203aeaf6bf08e67e491f69b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ffbfaff9522f0afbed27f0f18278bb2" id="r_a8ffbfaff9522f0afbed27f0f18278bb2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8ffbfaff9522f0afbed27f0f18278bb2">IMB_SELF_TEST_PHASE_PASS</a>&#160;&#160;&#160;&quot;PASS&quot;</td></tr>
<tr class="separator:a8ffbfaff9522f0afbed27f0f18278bb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6eed902612dcc2a48357d41eec6cbbe0" id="r_a6eed902612dcc2a48357d41eec6cbbe0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6eed902612dcc2a48357d41eec6cbbe0">IMB_SELF_TEST_PHASE_FAIL</a>&#160;&#160;&#160;&quot;FAIL&quot;</td></tr>
<tr class="separator:a6eed902612dcc2a48357d41eec6cbbe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4c08f2bffbec28676efdb2e2719cccc" id="r_ad4c08f2bffbec28676efdb2e2719cccc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad4c08f2bffbec28676efdb2e2719cccc">IMB_SELF_TEST_PHASE_CORRUPT</a>&#160;&#160;&#160;&quot;CORRUPT&quot;</td></tr>
<tr class="separator:ad4c08f2bffbec28676efdb2e2719cccc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13bffffd1c1829e5d92815d90cb27534" id="r_a13bffffd1c1829e5d92815d90cb27534"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a13bffffd1c1829e5d92815d90cb27534">IMB_SELF_TEST_TYPE_KAT_CIPHER</a>&#160;&#160;&#160;&quot;KAT_Cipher&quot;</td></tr>
<tr class="separator:a13bffffd1c1829e5d92815d90cb27534"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a399d147b404c7ee60b254b34606e02db" id="r_a399d147b404c7ee60b254b34606e02db"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a399d147b404c7ee60b254b34606e02db">IMB_SELF_TEST_TYPE_KAT_AUTH</a>&#160;&#160;&#160;&quot;KAT_Auth&quot;</td></tr>
<tr class="separator:a399d147b404c7ee60b254b34606e02db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a439b4d815e36cd31bbe7d230673343c3" id="r_a439b4d815e36cd31bbe7d230673343c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a439b4d815e36cd31bbe7d230673343c3">IMB_SELF_TEST_TYPE_KAT_AEAD</a>&#160;&#160;&#160;&quot;KAT_AEAD&quot;</td></tr>
<tr class="separator:a439b4d815e36cd31bbe7d230673343c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6afb888ab232bab1c3ca027eb071f388" id="r_a6afb888ab232bab1c3ca027eb071f388"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6afb888ab232bab1c3ca027eb071f388">IMB_CPUFLAGS_NO_AESNI</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#abcc243fc505aca3eac6963eff25e9b99">IMB_FEATURE_SSE4_2</a> | <a class="el" href="intel-ipsec-mb_8h.html#a5eef394935c651931b1cf560f31c841c">IMB_FEATURE_CMOV</a>)</td></tr>
<tr class="separator:a6afb888ab232bab1c3ca027eb071f388"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5654f563aaad731df22c8e8517c9154c" id="r_a5654f563aaad731df22c8e8517c9154c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5654f563aaad731df22c8e8517c9154c">IMB_CPUFLAGS_SSE</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#a6afb888ab232bab1c3ca027eb071f388">IMB_CPUFLAGS_NO_AESNI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a19c147087d2ae918baa22f90fa9b3b05">IMB_FEATURE_AESNI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a1af54a4a862936a6793af2ff44163ba5">IMB_FEATURE_PCLMULQDQ</a>)</td></tr>
<tr class="separator:a5654f563aaad731df22c8e8517c9154c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6776750b801d7e177c152569c10c546" id="r_ae6776750b801d7e177c152569c10c546"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae6776750b801d7e177c152569c10c546">IMB_CPUFLAGS_SSE_T2</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#a5654f563aaad731df22c8e8517c9154c">IMB_CPUFLAGS_SSE</a> | <a class="el" href="intel-ipsec-mb_8h.html#acb9c15eabfb9bafeb15a06886fa91e90">IMB_FEATURE_SHANI</a>)</td></tr>
<tr class="separator:ae6776750b801d7e177c152569c10c546"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1cc7ac79ca44f06e3caa18fdd6d441a" id="r_aa1cc7ac79ca44f06e3caa18fdd6d441a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa1cc7ac79ca44f06e3caa18fdd6d441a">IMB_CPUFLAGS_SSE_T3</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#ae6776750b801d7e177c152569c10c546">IMB_CPUFLAGS_SSE_T2</a> | <a class="el" href="intel-ipsec-mb_8h.html#aa67ab4088ac2f8cadbe839101d276567">IMB_FEATURE_GFNI</a>)</td></tr>
<tr class="separator:aa1cc7ac79ca44f06e3caa18fdd6d441a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0a92622a85423541536321231a6cb7d" id="r_ac0a92622a85423541536321231a6cb7d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac0a92622a85423541536321231a6cb7d">IMB_CPUFLAGS_AVX2</a></td></tr>
<tr class="separator:ac0a92622a85423541536321231a6cb7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a250932ede6ca7b69f5c763c24cf51d" id="r_a0a250932ede6ca7b69f5c763c24cf51d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0a250932ede6ca7b69f5c763c24cf51d">IMB_CPUFLAGS_AVX512</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#ac0a92622a85423541536321231a6cb7d">IMB_CPUFLAGS_AVX2</a> | <a class="el" href="intel-ipsec-mb_8h.html#ae6d6e3427c81b278d64f0189401c4964">IMB_FEATURE_AVX512_SKX</a>)</td></tr>
<tr class="separator:a0a250932ede6ca7b69f5c763c24cf51d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7bdbff703949eb2cf2dd3d3a08803de" id="r_af7bdbff703949eb2cf2dd3d3a08803de"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af7bdbff703949eb2cf2dd3d3a08803de">IMB_CPUFLAGS_AVX512_T2</a></td></tr>
<tr class="separator:af7bdbff703949eb2cf2dd3d3a08803de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18f17a6bcef83c3976ca7a9b4ca624de" id="r_a18f17a6bcef83c3976ca7a9b4ca624de"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a18f17a6bcef83c3976ca7a9b4ca624de">IMB_CPUFLAGS_AVX2_T2</a></td></tr>
<tr class="separator:a18f17a6bcef83c3976ca7a9b4ca624de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e356586d2d3d7e93ff1b23d4a90b344" id="r_a6e356586d2d3d7e93ff1b23d4a90b344"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6e356586d2d3d7e93ff1b23d4a90b344">IMB_CPUFLAGS_AVX2_T3</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#a18f17a6bcef83c3976ca7a9b4ca624de">IMB_CPUFLAGS_AVX2_T2</a> | <a class="el" href="intel-ipsec-mb_8h.html#a8a946f162ff5e363d04f8b44d2f48747">IMB_FEATURE_AVX_IFMA</a>)</td></tr>
<tr class="separator:a6e356586d2d3d7e93ff1b23d4a90b344"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae19bb873a98c070290e6773893f9a840" id="r_ae19bb873a98c070290e6773893f9a840"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae19bb873a98c070290e6773893f9a840">IMB_CPUFLAGS_AVX2_T4</a>&#160;&#160;&#160;        (<a class="el" href="intel-ipsec-mb_8h.html#a6e356586d2d3d7e93ff1b23d4a90b344">IMB_CPUFLAGS_AVX2_T3</a> | <a class="el" href="intel-ipsec-mb_8h.html#a42db17ecba592d31b3476e69eaa731c1">IMB_FEATURE_SM3NI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a893592aaa79eee3a42f62ac0fec31892">IMB_FEATURE_SM4NI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a3a5a4178425ed5ed19368bbcd6dec799">IMB_FEATURE_SHA512NI</a>)</td></tr>
<tr class="separator:ae19bb873a98c070290e6773893f9a840"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9070daf9749490016e9b5106b338867" id="r_af9070daf9749490016e9b5106b338867"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af9070daf9749490016e9b5106b338867">IMB_MAX_BURST_SIZE</a>&#160;&#160;&#160;128</td></tr>
<tr class="separator:af9070daf9749490016e9b5106b338867"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab12d22470a68b5d3852c8dd972784d97" id="r_ab12d22470a68b5d3852c8dd972784d97"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab12d22470a68b5d3852c8dd972784d97">IMB_MAX_JOBS</a>&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#af9070daf9749490016e9b5106b338867">IMB_MAX_BURST_SIZE</a> * 2)</td></tr>
<tr class="separator:ab12d22470a68b5d3852c8dd972784d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34b6006fc39dd4ea23d3fec49237d382" id="r_a34b6006fc39dd4ea23d3fec49237d382"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a34b6006fc39dd4ea23d3fec49237d382">IMB_GET_NEXT_JOB</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;get_next_job((_mgr)))</td></tr>
<tr class="memdesc:a34b6006fc39dd4ea23d3fec49237d382"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next available job.  <br /></td></tr>
<tr class="separator:a34b6006fc39dd4ea23d3fec49237d382"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3602a4ccaf1da4bf6787169370cef04f" id="r_a3602a4ccaf1da4bf6787169370cef04f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3602a4ccaf1da4bf6787169370cef04f">IMB_SUBMIT_JOB</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;submit_job((_mgr)))</td></tr>
<tr class="memdesc:a3602a4ccaf1da4bf6787169370cef04f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing after validating.  <br /></td></tr>
<tr class="separator:a3602a4ccaf1da4bf6787169370cef04f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af23c64e466272c5ae90fcf78fbcd0c3d" id="r_af23c64e466272c5ae90fcf78fbcd0c3d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af23c64e466272c5ae90fcf78fbcd0c3d">IMB_SUBMIT_JOB_NOCHECK</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;submit_job_nocheck((_mgr)))</td></tr>
<tr class="memdesc:af23c64e466272c5ae90fcf78fbcd0c3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing without validating.  <br /></td></tr>
<tr class="separator:af23c64e466272c5ae90fcf78fbcd0c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18e5a7f85573f0006448deda41014117" id="r_a18e5a7f85573f0006448deda41014117"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a18e5a7f85573f0006448deda41014117">IMB_GET_COMPLETED_JOB</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;get_completed_job((_mgr)))</td></tr>
<tr class="memdesc:a18e5a7f85573f0006448deda41014117"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next completed job.  <br /></td></tr>
<tr class="separator:a18e5a7f85573f0006448deda41014117"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4726e3683b3579b1e643134278386d72" id="r_a4726e3683b3579b1e643134278386d72"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4726e3683b3579b1e643134278386d72">IMB_FLUSH_JOB</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;flush_job((_mgr)))</td></tr>
<tr class="memdesc:a4726e3683b3579b1e643134278386d72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force processing until next job in queue is completed.  <br /></td></tr>
<tr class="separator:a4726e3683b3579b1e643134278386d72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a712f6e7ecb2a16f8e1bc96b84d188365" id="r_a712f6e7ecb2a16f8e1bc96b84d188365"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a712f6e7ecb2a16f8e1bc96b84d188365">IMB_QUEUE_SIZE</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;queue_size((_mgr)))</td></tr>
<tr class="memdesc:a712f6e7ecb2a16f8e1bc96b84d188365"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of jobs queued to be processed.  <br /></td></tr>
<tr class="separator:a712f6e7ecb2a16f8e1bc96b84d188365"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6029af3f88d1908dd11a8f3e9eb9fd70" id="r_a6029af3f88d1908dd11a8f3e9eb9fd70"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6029af3f88d1908dd11a8f3e9eb9fd70">IMB_GET_NEXT_BURST</a>(_mgr,  _n_jobs,  _jobs)&#160;&#160;&#160;        ((_mgr)-&gt;get_next_burst((_mgr), (_n_jobs), (_jobs)))</td></tr>
<tr class="memdesc:a6029af3f88d1908dd11a8f3e9eb9fd70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next available burst (list of pointers to available <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures).  <br /></td></tr>
<tr class="separator:a6029af3f88d1908dd11a8f3e9eb9fd70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabfad78b032b6b160e3ba51477132524" id="r_aabfad78b032b6b160e3ba51477132524"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aabfad78b032b6b160e3ba51477132524">IMB_SUBMIT_BURST</a>(_mgr,  _n_jobs,  _jobs)&#160;&#160;&#160;((_mgr)-&gt;submit_burst((_mgr), (_n_jobs), (_jobs)))</td></tr>
<tr class="memdesc:aabfad78b032b6b160e3ba51477132524"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit multiple jobs to be processed after validating.  <br /></td></tr>
<tr class="separator:aabfad78b032b6b160e3ba51477132524"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa06f0e18794d4a95d16e61dfb1af70c4" id="r_aa06f0e18794d4a95d16e61dfb1af70c4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa06f0e18794d4a95d16e61dfb1af70c4">IMB_SUBMIT_BURST_NOCHECK</a>(_mgr,  _n_jobs,  _jobs)&#160;&#160;&#160;        ((_mgr)-&gt;submit_burst_nocheck((_mgr), (_n_jobs), (_jobs)))</td></tr>
<tr class="memdesc:aa06f0e18794d4a95d16e61dfb1af70c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit multiple jobs to be processed without validating.  <br /></td></tr>
<tr class="separator:aa06f0e18794d4a95d16e61dfb1af70c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afff52a9aaa1c1875e7c905e2fb29fc43" id="r_afff52a9aaa1c1875e7c905e2fb29fc43"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afff52a9aaa1c1875e7c905e2fb29fc43">IMB_FLUSH_BURST</a>(_mgr,  _max_jobs,  _jobs)&#160;&#160;&#160;((_mgr)-&gt;flush_burst((_mgr), (_max_jobs), (_jobs)))</td></tr>
<tr class="memdesc:afff52a9aaa1c1875e7c905e2fb29fc43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force up to <em>max_jobs</em> outstanding jobs to completion.  <br /></td></tr>
<tr class="separator:afff52a9aaa1c1875e7c905e2fb29fc43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae487720f5112a3ecec659ab4aeada77e" id="r_ae487720f5112a3ecec659ab4aeada77e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae487720f5112a3ecec659ab4aeada77e">IMB_SUBMIT_CIPHER_BURST</a>(_mgr,  _jobs,  _n_jobs,  _cipher,  _dir,  _key_size)&#160;&#160;&#160;        ((_mgr)-&gt;submit_cipher_burst((_mgr), (_jobs), (_n_jobs), (_cipher), (_dir), (_key_size)))</td></tr>
<tr class="separator:ae487720f5112a3ecec659ab4aeada77e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af819e81f584b3b56e0201a7174b3c0eb" id="r_af819e81f584b3b56e0201a7174b3c0eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af819e81f584b3b56e0201a7174b3c0eb">IMB_SUBMIT_CIPHER_BURST_NOCHECK</a>(_mgr,  _jobs,  _n_jobs,  _cipher,  _dir,  _key_size)</td></tr>
<tr class="separator:af819e81f584b3b56e0201a7174b3c0eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3702b37004e38dd27a9b8a008a0c48ed" id="r_a3702b37004e38dd27a9b8a008a0c48ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3702b37004e38dd27a9b8a008a0c48ed">IMB_SUBMIT_HASH_BURST</a>(_mgr,  _jobs,  _n_jobs,  _hash)&#160;&#160;&#160;        ((_mgr)-&gt;submit_hash_burst((_mgr), (_jobs), (_n_jobs), (_hash)))</td></tr>
<tr class="separator:a3702b37004e38dd27a9b8a008a0c48ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd6b80655a6129fe063d2ffb391e3015" id="r_afd6b80655a6129fe063d2ffb391e3015"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afd6b80655a6129fe063d2ffb391e3015">IMB_SUBMIT_HASH_BURST_NOCHECK</a>(_mgr,  _jobs,  _n_jobs,  _hash)&#160;&#160;&#160;        ((_mgr)-&gt;submit_hash_burst_nocheck((_mgr), (_jobs), (_n_jobs), (_hash)))</td></tr>
<tr class="separator:afd6b80655a6129fe063d2ffb391e3015"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add938488021e958fd1942cffff1459e9" id="r_add938488021e958fd1942cffff1459e9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#add938488021e958fd1942cffff1459e9">IMB_SUBMIT_AEAD_BURST</a>(_mgr,  _jobs,  _n_jobs,  _cipher,  _dir,  _key_size)&#160;&#160;&#160;        ((_mgr)-&gt;submit_aead_burst((_mgr), (_jobs), (_n_jobs), (_cipher), (_dir), (_key_size)))</td></tr>
<tr class="separator:add938488021e958fd1942cffff1459e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af72a93d3debe41e175ebd1b9a604205f" id="r_af72a93d3debe41e175ebd1b9a604205f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af72a93d3debe41e175ebd1b9a604205f">IMB_SUBMIT_AEAD_BURST_NOCHECK</a>(_mgr,  _jobs,  _n_jobs,  _cipher,  _dir,  _key_size)</td></tr>
<tr class="separator:af72a93d3debe41e175ebd1b9a604205f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa111339421e794c2643df2ecf86a8c0" id="r_afa111339421e794c2643df2ecf86a8c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afa111339421e794c2643df2ecf86a8c0">IMB_AES_KEYEXP_128</a>(_mgr,  _key,  _enc_exp_key,  _dec_exp_key)&#160;&#160;&#160;        ((_mgr)-&gt;keyexp_128((_key), (_enc_exp_key), (_dec_exp_key)))</td></tr>
<tr class="separator:afa111339421e794c2643df2ecf86a8c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a574d86849e2c9ca402305eb479ca558d" id="r_a574d86849e2c9ca402305eb479ca558d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a574d86849e2c9ca402305eb479ca558d">IMB_AES_KEYEXP_192</a>(_mgr,  _key,  _enc_exp_key,  _dec_exp_key)&#160;&#160;&#160;        ((_mgr)-&gt;keyexp_192((_key), (_enc_exp_key), (_dec_exp_key)))</td></tr>
<tr class="separator:a574d86849e2c9ca402305eb479ca558d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a003306124dae4920161ed6d4a7bf4e2f" id="r_a003306124dae4920161ed6d4a7bf4e2f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a003306124dae4920161ed6d4a7bf4e2f">IMB_AES_KEYEXP_256</a>(_mgr,  _key,  _enc_exp_key,  _dec_exp_key)&#160;&#160;&#160;        ((_mgr)-&gt;keyexp_256((_key), (_enc_exp_key), (_dec_exp_key)))</td></tr>
<tr class="separator:a003306124dae4920161ed6d4a7bf4e2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1e9006a8a76ba7fb09b97816d7fdfe5" id="r_aa1e9006a8a76ba7fb09b97816d7fdfe5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa1e9006a8a76ba7fb09b97816d7fdfe5">IMB_AES_CMAC_SUBKEY_GEN_128</a>(_mgr,  _exp_key,  _key1,  _key2)&#160;&#160;&#160;        ((_mgr)-&gt;cmac_subkey_gen_128((_exp_key), (_key1), (_key2)))</td></tr>
<tr class="separator:aa1e9006a8a76ba7fb09b97816d7fdfe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca7b22139c297858794c7268439e88f0" id="r_aca7b22139c297858794c7268439e88f0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aca7b22139c297858794c7268439e88f0">IMB_AES_CMAC_SUBKEY_GEN_256</a>(_mgr,  _exp_key,  _key1,  _key2)&#160;&#160;&#160;        ((_mgr)-&gt;cmac_subkey_gen_256((_exp_key), (_key1), (_key2)))</td></tr>
<tr class="separator:aca7b22139c297858794c7268439e88f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a5f2342f2b1e65e41084d915c3b2cda" id="r_a5a5f2342f2b1e65e41084d915c3b2cda"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5a5f2342f2b1e65e41084d915c3b2cda">IMB_AES_XCBC_KEYEXP</a>(_mgr,  _key,  _exp_key,  _exp_key2,  _exp_key3)&#160;&#160;&#160;        ((_mgr)-&gt;xcbc_keyexp((_key), (_exp_key), (_exp_key2), (_exp_key3)))</td></tr>
<tr class="separator:a5a5f2342f2b1e65e41084d915c3b2cda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fbb59f06f60f1900b591735ad691ac6" id="r_a6fbb59f06f60f1900b591735ad691ac6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6fbb59f06f60f1900b591735ad691ac6">IMB_DES_KEYSCHED</a>(_mgr,  _exp_key,  _key)&#160;&#160;&#160;((_mgr)-&gt;des_key_sched((_exp_key), (_key)))</td></tr>
<tr class="separator:a6fbb59f06f60f1900b591735ad691ac6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2f9695b12c32c303faa7c93c1c24c9b" id="r_ac2f9695b12c32c303faa7c93c1c24c9b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac2f9695b12c32c303faa7c93c1c24c9b">IMB_SHA1_ONE_BLOCK</a>(_mgr,  _src,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha1_one_block((_src), (_tag)))</td></tr>
<tr class="separator:ac2f9695b12c32c303faa7c93c1c24c9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae61900d14cde2836621a1421141548a4" id="r_ae61900d14cde2836621a1421141548a4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae61900d14cde2836621a1421141548a4">IMB_SHA1</a>(_mgr,  _src,  _length,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha1((_src), (_length), (_tag)))</td></tr>
<tr class="separator:ae61900d14cde2836621a1421141548a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1f7eb5e9bcd0c69a70dc76747f919f6" id="r_ab1f7eb5e9bcd0c69a70dc76747f919f6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab1f7eb5e9bcd0c69a70dc76747f919f6">IMB_SHA224_ONE_BLOCK</a>(_mgr,  _src,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha224_one_block((_src), (_tag)))</td></tr>
<tr class="separator:ab1f7eb5e9bcd0c69a70dc76747f919f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a542a40ced46bf97a678c6b44c325b360" id="r_a542a40ced46bf97a678c6b44c325b360"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a542a40ced46bf97a678c6b44c325b360">IMB_SHA224</a>(_mgr,  _src,  _length,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha224((_src), (_length), (_tag)))</td></tr>
<tr class="separator:a542a40ced46bf97a678c6b44c325b360"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6023b87b5d1c6dc7dc0547db540af997" id="r_a6023b87b5d1c6dc7dc0547db540af997"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6023b87b5d1c6dc7dc0547db540af997">IMB_SHA256_ONE_BLOCK</a>(_mgr,  _src,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha256_one_block((_src), (_tag)))</td></tr>
<tr class="separator:a6023b87b5d1c6dc7dc0547db540af997"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37338b9f91315e5de0c4f3d19859aa7b" id="r_a37338b9f91315e5de0c4f3d19859aa7b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a37338b9f91315e5de0c4f3d19859aa7b">IMB_SHA256</a>(_mgr,  _src,  _length,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha256((_src), (_length), (_tag)))</td></tr>
<tr class="separator:a37338b9f91315e5de0c4f3d19859aa7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a763d0cfb16263906e44f46696b16124b" id="r_a763d0cfb16263906e44f46696b16124b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a763d0cfb16263906e44f46696b16124b">IMB_SHA384_ONE_BLOCK</a>(_mgr,  _src,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha384_one_block((_src), (_tag)))</td></tr>
<tr class="separator:a763d0cfb16263906e44f46696b16124b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8052b8b996f866f27b4d443bcda0d5f" id="r_ac8052b8b996f866f27b4d443bcda0d5f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac8052b8b996f866f27b4d443bcda0d5f">IMB_SHA384</a>(_mgr,  _src,  _length,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha384((_src), (_length), (_tag)))</td></tr>
<tr class="separator:ac8052b8b996f866f27b4d443bcda0d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71d0a529b355a434efeeda2e01870ba9" id="r_a71d0a529b355a434efeeda2e01870ba9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a71d0a529b355a434efeeda2e01870ba9">IMB_SHA512_ONE_BLOCK</a>(_mgr,  _src,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha512_one_block((_src), (_tag)))</td></tr>
<tr class="separator:a71d0a529b355a434efeeda2e01870ba9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac806d6b629633e801409d3e363d83f6c" id="r_ac806d6b629633e801409d3e363d83f6c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac806d6b629633e801409d3e363d83f6c">IMB_SHA512</a>(_mgr,  _src,  _length,  _tag)&#160;&#160;&#160;((_mgr)-&gt;sha512((_src), (_length), (_tag)))</td></tr>
<tr class="separator:ac806d6b629633e801409d3e363d83f6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52b27293e2a19809c5f7d0f2afab97a2" id="r_a52b27293e2a19809c5f7d0f2afab97a2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a52b27293e2a19809c5f7d0f2afab97a2">IMB_MD5_ONE_BLOCK</a>(_mgr,  _src,  _tag)&#160;&#160;&#160;((_mgr)-&gt;md5_one_block((_src), (_tag)))</td></tr>
<tr class="separator:a52b27293e2a19809c5f7d0f2afab97a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e122b460a714f2981f94bf7f4bba547" id="r_a1e122b460a714f2981f94bf7f4bba547"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1e122b460a714f2981f94bf7f4bba547">IMB_AES128_CFB_ONE</a>(_mgr,  _dst,  _src,  _iv,  _exp_key,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;aes128_cfb_one((_dst), (_src), (_iv), (_exp_key), (_len)))</td></tr>
<tr class="memdesc:a1e122b460a714f2981f94bf7f4bba547"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-CFB-128 Encrypt/Decrypt up to one block.  <br /></td></tr>
<tr class="separator:a1e122b460a714f2981f94bf7f4bba547"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d68ab67a7d4a471f5cb454301aac9d" id="r_ab4d68ab67a7d4a471f5cb454301aac9d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab4d68ab67a7d4a471f5cb454301aac9d">IMB_AES256_CFB_ONE</a>(_mgr,  _dst,  _src,  _iv,  _exp_key,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;aes256_cfb_one((_dst), (_src), (_iv), (_exp_key), (_len)))</td></tr>
<tr class="memdesc:ab4d68ab67a7d4a471f5cb454301aac9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-CFB-256 Encrypt/Decrypt up to one block.  <br /></td></tr>
<tr class="separator:ab4d68ab67a7d4a471f5cb454301aac9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb65fc01b63a475cca4cf532ace005b6" id="r_adb65fc01b63a475cca4cf532ace005b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adb65fc01b63a475cca4cf532ace005b6">IMB_AES128_GCM_ENC</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len,  _iv,  _aad,  _aadl,  _tag,  _tagl)</td></tr>
<tr class="separator:adb65fc01b63a475cca4cf532ace005b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7548f17077a0b187a4ecfde4e0ff5d9" id="r_af7548f17077a0b187a4ecfde4e0ff5d9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af7548f17077a0b187a4ecfde4e0ff5d9">IMB_AES192_GCM_ENC</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len,  _iv,  _aad,  _aadl,  _tag,  _tagl)</td></tr>
<tr class="separator:af7548f17077a0b187a4ecfde4e0ff5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a556333acdc2db1a2540a1cd1af644ca9" id="r_a556333acdc2db1a2540a1cd1af644ca9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a556333acdc2db1a2540a1cd1af644ca9">IMB_AES256_GCM_ENC</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len,  _iv,  _aad,  _aadl,  _tag,  _tagl)</td></tr>
<tr class="separator:a556333acdc2db1a2540a1cd1af644ca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b026b2a901c76a1512eb9c8c80f9709" id="r_a2b026b2a901c76a1512eb9c8c80f9709"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2b026b2a901c76a1512eb9c8c80f9709">IMB_AES128_GCM_DEC</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len,  _iv,  _aad,  _aadl,  _tag,  _tagl)</td></tr>
<tr class="separator:a2b026b2a901c76a1512eb9c8c80f9709"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedd2b84ebfbcb56ac5176e8793490047" id="r_aedd2b84ebfbcb56ac5176e8793490047"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aedd2b84ebfbcb56ac5176e8793490047">IMB_AES192_GCM_DEC</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len,  _iv,  _aad,  _aadl,  _tag,  _tagl)</td></tr>
<tr class="separator:aedd2b84ebfbcb56ac5176e8793490047"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1eb77771626f83eba8482473d29ffbb1" id="r_a1eb77771626f83eba8482473d29ffbb1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1eb77771626f83eba8482473d29ffbb1">IMB_AES256_GCM_DEC</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len,  _iv,  _aad,  _aadl,  _tag,  _tagl)</td></tr>
<tr class="separator:a1eb77771626f83eba8482473d29ffbb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0a8ea6b81df94d066b028ca7bf656ef" id="r_ad0a8ea6b81df94d066b028ca7bf656ef"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad0a8ea6b81df94d066b028ca7bf656ef">IMB_AES128_GCM_INIT</a>(_mgr,  _exp_key,  _ctx,  _iv,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_init((_exp_key), (_ctx), (_iv), (_aad), (_aadl)))</td></tr>
<tr class="separator:ad0a8ea6b81df94d066b028ca7bf656ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd402fe539de3fc8ff4062c2804096f" id="r_a8cd402fe539de3fc8ff4062c2804096f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8cd402fe539de3fc8ff4062c2804096f">IMB_AES192_GCM_INIT</a>(_mgr,  _exp_key,  _ctx,  _iv,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_init((_exp_key), (_ctx), (_iv), (_aad), (_aadl)))</td></tr>
<tr class="separator:a8cd402fe539de3fc8ff4062c2804096f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8049111340bf2694799eb4e42b0a82c3" id="r_a8049111340bf2694799eb4e42b0a82c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8049111340bf2694799eb4e42b0a82c3">IMB_AES256_GCM_INIT</a>(_mgr,  _exp_key,  _ctx,  _iv,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_init((_exp_key), (_ctx), (_iv), (_aad), (_aadl)))</td></tr>
<tr class="separator:a8049111340bf2694799eb4e42b0a82c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04142f11a678c0419dff242a0ccbd2e6" id="r_a04142f11a678c0419dff242a0ccbd2e6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a04142f11a678c0419dff242a0ccbd2e6">IMB_AES128_GCM_INIT_VAR_IV</a>(_mgr,  _exp_key,  _ctx,  _iv,  _ivl,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_init_var_iv((_exp_key), (_ctx), (_iv), (_ivl), (_aad), (_aadl)))</td></tr>
<tr class="separator:a04142f11a678c0419dff242a0ccbd2e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97791c976660a673405e6fa22ef3d262" id="r_a97791c976660a673405e6fa22ef3d262"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a97791c976660a673405e6fa22ef3d262">IMB_AES192_GCM_INIT_VAR_IV</a>(_mgr,  _exp_key,  _ctx,  _iv,  _ivl,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_init_var_iv((_exp_key), (_ctx), (_iv), (_ivl), (_aad), (_aadl)))</td></tr>
<tr class="separator:a97791c976660a673405e6fa22ef3d262"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61ddc1485781aba1969fe3ca97a22ded" id="r_a61ddc1485781aba1969fe3ca97a22ded"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a61ddc1485781aba1969fe3ca97a22ded">IMB_AES256_GCM_INIT_VAR_IV</a>(_mgr,  _exp_key,  _ctx,  _iv,  _ivl,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_init_var_iv((_exp_key), (_ctx), (_iv), (_ivl), (_aad), (_aadl)))</td></tr>
<tr class="separator:a61ddc1485781aba1969fe3ca97a22ded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1f4c52b4145946e80ef698e469d67db" id="r_ab1f4c52b4145946e80ef698e469d67db"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab1f4c52b4145946e80ef698e469d67db">IMB_AES128_GCM_ENC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_enc_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:ab1f4c52b4145946e80ef698e469d67db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a456f5bed8eb67603bdebfda230f76957" id="r_a456f5bed8eb67603bdebfda230f76957"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a456f5bed8eb67603bdebfda230f76957">IMB_AES192_GCM_ENC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_enc_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:a456f5bed8eb67603bdebfda230f76957"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a223c00c636e2552e7a3dd1a97952cc6a" id="r_a223c00c636e2552e7a3dd1a97952cc6a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a223c00c636e2552e7a3dd1a97952cc6a">IMB_AES256_GCM_ENC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_enc_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:a223c00c636e2552e7a3dd1a97952cc6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f6014cfaaa0ee5f454e2771ff6b5829" id="r_a2f6014cfaaa0ee5f454e2771ff6b5829"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2f6014cfaaa0ee5f454e2771ff6b5829">IMB_AES128_GCM_DEC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_dec_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:a2f6014cfaaa0ee5f454e2771ff6b5829"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae25c4f893fc29f09d03a8ece5fddc82f" id="r_ae25c4f893fc29f09d03a8ece5fddc82f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae25c4f893fc29f09d03a8ece5fddc82f">IMB_AES192_GCM_DEC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_dec_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:ae25c4f893fc29f09d03a8ece5fddc82f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70847fd3bb5d1be79ebfa4e9104edabd" id="r_a70847fd3bb5d1be79ebfa4e9104edabd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a70847fd3bb5d1be79ebfa4e9104edabd">IMB_AES256_GCM_DEC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_dec_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:a70847fd3bb5d1be79ebfa4e9104edabd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf13d46f5832cf9e0cb50f7fcde020be" id="r_aaf13d46f5832cf9e0cb50f7fcde020be"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aaf13d46f5832cf9e0cb50f7fcde020be">IMB_AES128_GCM_ENC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_enc_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:aaf13d46f5832cf9e0cb50f7fcde020be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e36a361be137a5d49b0798f054403bd" id="r_a1e36a361be137a5d49b0798f054403bd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1e36a361be137a5d49b0798f054403bd">IMB_AES192_GCM_ENC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_enc_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a1e36a361be137a5d49b0798f054403bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f49fe7109315eb479ac1c9969e2f877" id="r_a1f49fe7109315eb479ac1c9969e2f877"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1f49fe7109315eb479ac1c9969e2f877">IMB_AES256_GCM_ENC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_enc_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a1f49fe7109315eb479ac1c9969e2f877"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a280b9231c76c525a62d0ef819abd2133" id="r_a280b9231c76c525a62d0ef819abd2133"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a280b9231c76c525a62d0ef819abd2133">IMB_AES128_GCM_DEC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_dec_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a280b9231c76c525a62d0ef819abd2133"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a759bbe1b8494c3157f1a506c003b700b" id="r_a759bbe1b8494c3157f1a506c003b700b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a759bbe1b8494c3157f1a506c003b700b">IMB_AES192_GCM_DEC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_dec_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a759bbe1b8494c3157f1a506c003b700b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64d9473bc4f28c0b783baa4a31b9930e" id="r_a64d9473bc4f28c0b783baa4a31b9930e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a64d9473bc4f28c0b783baa4a31b9930e">IMB_AES256_GCM_DEC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_dec_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a64d9473bc4f28c0b783baa4a31b9930e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af315c30a8cbd3c20735e22f462b47964" id="r_af315c30a8cbd3c20735e22f462b47964"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af315c30a8cbd3c20735e22f462b47964">IMB_AES128_GMAC_INIT</a>(_mgr,  _exp_key,  _ctx,  _iv,  _ivl)&#160;&#160;&#160;        ((_mgr)-&gt;gmac128_init((_exp_key), (_ctx), (_iv), (_ivl)))</td></tr>
<tr class="separator:af315c30a8cbd3c20735e22f462b47964"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ed49507e66a6e98eab4a3d34e75231" id="r_a25ed49507e66a6e98eab4a3d34e75231"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a25ed49507e66a6e98eab4a3d34e75231">IMB_AES192_GMAC_INIT</a>(_mgr,  _exp_key,  _ctx,  _iv,  _ivl)&#160;&#160;&#160;        ((_mgr)-&gt;gmac192_init((_exp_key), (_ctx), (_iv), (_ivl)))</td></tr>
<tr class="separator:a25ed49507e66a6e98eab4a3d34e75231"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d57940a54e9d94fa14dc008cd959092" id="r_a3d57940a54e9d94fa14dc008cd959092"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3d57940a54e9d94fa14dc008cd959092">IMB_AES256_GMAC_INIT</a>(_mgr,  _exp_key,  _ctx,  _iv,  _ivl)&#160;&#160;&#160;        ((_mgr)-&gt;gmac256_init((_exp_key), (_ctx), (_iv), (_ivl)))</td></tr>
<tr class="separator:a3d57940a54e9d94fa14dc008cd959092"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0b2ba1a0f9b099a06a1ba04380b0e2a" id="r_af0b2ba1a0f9b099a06a1ba04380b0e2a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af0b2ba1a0f9b099a06a1ba04380b0e2a">IMB_AES128_GMAC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gmac128_update((_exp_key), (_ctx), (_src), (_len)))</td></tr>
<tr class="separator:af0b2ba1a0f9b099a06a1ba04380b0e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a113d0f4320e929f89786773f7d11c5c8" id="r_a113d0f4320e929f89786773f7d11c5c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a113d0f4320e929f89786773f7d11c5c8">IMB_AES192_GMAC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gmac192_update((_exp_key), (_ctx), (_src), (_len)))</td></tr>
<tr class="separator:a113d0f4320e929f89786773f7d11c5c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91b8d98c7ffce8179ef953493a959d4b" id="r_a91b8d98c7ffce8179ef953493a959d4b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a91b8d98c7ffce8179ef953493a959d4b">IMB_AES256_GMAC_UPDATE</a>(_mgr,  _exp_key,  _ctx,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;gmac256_update((_exp_key), (_ctx), (_src), (_len)))</td></tr>
<tr class="separator:a91b8d98c7ffce8179ef953493a959d4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0bd4f5841d41433339717e6b97c15ad" id="r_af0bd4f5841d41433339717e6b97c15ad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af0bd4f5841d41433339717e6b97c15ad">IMB_AES128_GMAC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gmac128_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:af0bd4f5841d41433339717e6b97c15ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16a6f89fd4131c406d6ee7a1aeb663eb" id="r_a16a6f89fd4131c406d6ee7a1aeb663eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a16a6f89fd4131c406d6ee7a1aeb663eb">IMB_AES192_GMAC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gmac192_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a16a6f89fd4131c406d6ee7a1aeb663eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfbb7469f7d0240bb3d9a0e5f368b19e" id="r_abfbb7469f7d0240bb3d9a0e5f368b19e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abfbb7469f7d0240bb3d9a0e5f368b19e">IMB_AES256_GMAC_FINALIZE</a>(_mgr,  _exp_key,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;gmac256_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:abfbb7469f7d0240bb3d9a0e5f368b19e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c63dfec645afa671f93f4fa65a6996e" id="r_a1c63dfec645afa671f93f4fa65a6996e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1c63dfec645afa671f93f4fa65a6996e">IMB_AES128_GCM_PRECOMP</a>(_mgr,  _key)&#160;&#160;&#160;((_mgr)-&gt;gcm128_precomp((_key)))</td></tr>
<tr class="separator:a1c63dfec645afa671f93f4fa65a6996e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7b3bcfd3ecbe7b2b8c7da963310b87b" id="r_ac7b3bcfd3ecbe7b2b8c7da963310b87b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac7b3bcfd3ecbe7b2b8c7da963310b87b">IMB_AES192_GCM_PRECOMP</a>(_mgr,  _key)&#160;&#160;&#160;((_mgr)-&gt;gcm192_precomp((_key)))</td></tr>
<tr class="separator:ac7b3bcfd3ecbe7b2b8c7da963310b87b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fa417a748ca30a961334bf91297dfda" id="r_a4fa417a748ca30a961334bf91297dfda"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4fa417a748ca30a961334bf91297dfda">IMB_AES256_GCM_PRECOMP</a>(_mgr,  _key)&#160;&#160;&#160;((_mgr)-&gt;gcm256_precomp((_key)))</td></tr>
<tr class="separator:a4fa417a748ca30a961334bf91297dfda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a442c1fcd7d427bf78e804da32bdbd1" id="r_a5a442c1fcd7d427bf78e804da32bdbd1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5a442c1fcd7d427bf78e804da32bdbd1">IMB_AES128_GCM_PRE</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;((_mgr)-&gt;gcm128_pre((_key), (_exp_key)))</td></tr>
<tr class="separator:a5a442c1fcd7d427bf78e804da32bdbd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a003f16aac382baff7a6b83040e58e471" id="r_a003f16aac382baff7a6b83040e58e471"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a003f16aac382baff7a6b83040e58e471">IMB_AES192_GCM_PRE</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;((_mgr)-&gt;gcm192_pre((_key), (_exp_key)))</td></tr>
<tr class="separator:a003f16aac382baff7a6b83040e58e471"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5771f5169d3f3af3a2419ccd8275a754" id="r_a5771f5169d3f3af3a2419ccd8275a754"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5771f5169d3f3af3a2419ccd8275a754">IMB_AES256_GCM_PRE</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;((_mgr)-&gt;gcm256_pre((_key), (_exp_key)))</td></tr>
<tr class="separator:a5771f5169d3f3af3a2419ccd8275a754"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a230f16784519d7e2b69de87871d35cb2" id="r_a230f16784519d7e2b69de87871d35cb2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a230f16784519d7e2b69de87871d35cb2">IMB_GHASH_PRE</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;((_mgr)-&gt;ghash_pre((_key), (_exp_key)))</td></tr>
<tr class="separator:a230f16784519d7e2b69de87871d35cb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a477ad08a4c55e2c6458b7e86dae803ec" id="r_a477ad08a4c55e2c6458b7e86dae803ec"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a477ad08a4c55e2c6458b7e86dae803ec">IMB_GHASH</a>(_mgr,  _exp_key,  _src,  _len,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;ghash((_exp_key), (_src), (_len), (_tag), (_tagl)))</td></tr>
<tr class="separator:a477ad08a4c55e2c6458b7e86dae803ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb8ac3238e6dfe39a10e64602a96e643" id="r_adb8ac3238e6dfe39a10e64602a96e643"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adb8ac3238e6dfe39a10e64602a96e643">IMB_CHACHA20_POLY1305_INIT</a>(_mgr,  _key,  _ctx,  _iv,  _aad,  _aadl)&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_init((_key), (_ctx), (_iv), (_aad), (_aadl)))</td></tr>
<tr class="separator:adb8ac3238e6dfe39a10e64602a96e643"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2abd7cd460b99467836188d62272cd2b" id="r_a2abd7cd460b99467836188d62272cd2b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2abd7cd460b99467836188d62272cd2b">IMB_CHACHA20_POLY1305_ENC_UPDATE</a>(_mgr,  _key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_enc_update((_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:a2abd7cd460b99467836188d62272cd2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ac8fd429d9f356003522200811b0bed" id="r_a4ac8fd429d9f356003522200811b0bed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4ac8fd429d9f356003522200811b0bed">IMB_CHACHA20_POLY1305_DEC_UPDATE</a>(_mgr,  _key,  _ctx,  _dst,  _src,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_dec_update((_key), (_ctx), (_dst), (_src), (_len)))</td></tr>
<tr class="separator:a4ac8fd429d9f356003522200811b0bed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7575d2fafb2b970bd08a49a556602031" id="r_a7575d2fafb2b970bd08a49a556602031"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7575d2fafb2b970bd08a49a556602031">IMB_CHACHA20_POLY1305_ENC_FINALIZE</a>(_mgr,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_finalize((_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a7575d2fafb2b970bd08a49a556602031"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f6a258b6a13952fad9c217194c716f0" id="r_a8f6a258b6a13952fad9c217194c716f0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8f6a258b6a13952fad9c217194c716f0">IMB_CHACHA20_POLY1305_DEC_FINALIZE</a>(_mgr,  _ctx,  _tag,  _tagl)&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_finalize((_ctx), (_tag), (_tagl)))</td></tr>
<tr class="separator:a8f6a258b6a13952fad9c217194c716f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb23f957dde69fb3bb4c6798d1a69da4" id="r_adb23f957dde69fb3bb4c6798d1a69da4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adb23f957dde69fb3bb4c6798d1a69da4">IMB_ZUC_EEA3_1_BUFFER</a>(_mgr,  _key,  _iv,  _src,  _dst,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;eea3_1_buffer((_key), (_iv), (_src), (_dst), (_len)))</td></tr>
<tr class="memdesc:adb23f957dde69fb3bb4c6798d1a69da4"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZUC EEA3 Confidentiality functions.  <br /></td></tr>
<tr class="separator:adb23f957dde69fb3bb4c6798d1a69da4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57445dd863838d04cf44f4d79c4dbcaf" id="r_a57445dd863838d04cf44f4d79c4dbcaf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a57445dd863838d04cf44f4d79c4dbcaf">IMB_ZUC_EEA3_4_BUFFER</a>(_mgr,  _key,  _iv,  _src,  _dst,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;eea3_4_buffer((_key), (_iv), (_src), (_dst), (_len)))</td></tr>
<tr class="memdesc:a57445dd863838d04cf44f4d79c4dbcaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZUC EEA3 Confidentiality functions.    <br /></td></tr>
<tr class="separator:a57445dd863838d04cf44f4d79c4dbcaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6382e3185f31e61f995ab90110c52991" id="r_a6382e3185f31e61f995ab90110c52991"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6382e3185f31e61f995ab90110c52991">IMB_ZUC_EEA3_N_BUFFER</a>(_mgr,  _key,  _iv,  _src,  _dst,  _len,  _count)&#160;&#160;&#160;        ((_mgr)-&gt;eea3_n_buffer((_key), (_iv), (_src), (_dst), (_len), (_count)))</td></tr>
<tr class="memdesc:a6382e3185f31e61f995ab90110c52991"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZUC EEA3 Confidentiality functions.    <br /></td></tr>
<tr class="separator:a6382e3185f31e61f995ab90110c52991"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac789fe54f3a8f92144831a67b14501d4" id="r_ac789fe54f3a8f92144831a67b14501d4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac789fe54f3a8f92144831a67b14501d4">IMB_ZUC_EIA3_1_BUFFER</a>(_mgr,  _key,  _iv,  _src,  _len,  _tag)&#160;&#160;&#160;        ((_mgr)-&gt;eia3_1_buffer((_key), (_iv), (_src), (_len), (_tag)))</td></tr>
<tr class="memdesc:ac789fe54f3a8f92144831a67b14501d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZUC EIA3 Integrity functions.  <br /></td></tr>
<tr class="separator:ac789fe54f3a8f92144831a67b14501d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae840d62f1246c0c4270c3319ef356d3c" id="r_ae840d62f1246c0c4270c3319ef356d3c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae840d62f1246c0c4270c3319ef356d3c">IMB_ZUC_EIA3_N_BUFFER</a>(_mgr,  _key,  _iv,  _src,  _len,  _tag,  _count)&#160;&#160;&#160;        ((_mgr)-&gt;eia3_n_buffer((_key), (_iv), (_src), (_len), (_tag), (_count)))</td></tr>
<tr class="memdesc:ae840d62f1246c0c4270c3319ef356d3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZUC EIA3 Integrity functions.    <br /></td></tr>
<tr class="separator:ae840d62f1246c0c4270c3319ef356d3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45ac331e1f9241e53fc35a1f88dec6ce" id="r_a45ac331e1f9241e53fc35a1f88dec6ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a45ac331e1f9241e53fc35a1f88dec6ce">IMB_KASUMI_F8_1_BUFFER</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;f8_1_buffer((_exp_key), (_iv), (_src), (_dst), (_len)))</td></tr>
<tr class="memdesc:a45ac331e1f9241e53fc35a1f88dec6ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Kasumi byte-level f8 operation on a single buffer.  <br /></td></tr>
<tr class="separator:a45ac331e1f9241e53fc35a1f88dec6ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3befb703f7dec2c0695e61542f3212c" id="r_ae3befb703f7dec2c0695e61542f3212c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae3befb703f7dec2c0695e61542f3212c">IMB_KASUMI_F8_1_BUFFER_BIT</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len,  _offset)&#160;&#160;&#160;        ((_mgr)-&gt;f8_1_buffer_bit((_exp_key), (_iv), (_src), (_dst), (_len), (_offset)))</td></tr>
<tr class="memdesc:ae3befb703f7dec2c0695e61542f3212c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Kasumi bit-level f8 operation on a single buffer.  <br /></td></tr>
<tr class="separator:ae3befb703f7dec2c0695e61542f3212c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a884bfa72fc232c7e84043d0faee719ee" id="r_a884bfa72fc232c7e84043d0faee719ee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a884bfa72fc232c7e84043d0faee719ee">IMB_KASUMI_F8_2_BUFFER</a>(_mgr,  _exp_key,  _iv1,  _iv2,  _src1,  _dst1,  _len1,  _src2,  _dst2,  _len2)</td></tr>
<tr class="memdesc:a884bfa72fc232c7e84043d0faee719ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Kasumi byte-level f8 operation in parallel on two buffers.  <br /></td></tr>
<tr class="separator:a884bfa72fc232c7e84043d0faee719ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af35e87948218048e4bbad7162208fe41" id="r_af35e87948218048e4bbad7162208fe41"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af35e87948218048e4bbad7162208fe41">IMB_KASUMI_F8_3_BUFFER</a>(_mgr,  _exp_key,  _iv1,  _iv2,  _iv3,  _src1,  _dst1,  _src2,  _dst2,  _src3,  _dst3,  _len)</td></tr>
<tr class="memdesc:af35e87948218048e4bbad7162208fe41"><td class="mdescLeft">&#160;</td><td class="mdescRight">kasumi byte-level f8 operation in parallel on three buffers  <br /></td></tr>
<tr class="separator:af35e87948218048e4bbad7162208fe41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ed6be7362e5ff7553fb4e7633bee76a" id="r_a7ed6be7362e5ff7553fb4e7633bee76a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7ed6be7362e5ff7553fb4e7633bee76a">IMB_KASUMI_F8_4_BUFFER</a>(_mgr,  _exp_key,  _iv1,  _iv2,  _iv3,  _iv4,  _src1,  _dst1,  _src2,  _dst2,  _src3,  _dst3,  _src4,  _dst4,  _len)</td></tr>
<tr class="memdesc:a7ed6be7362e5ff7553fb4e7633bee76a"><td class="mdescLeft">&#160;</td><td class="mdescRight">kasumi byte-level f8 operation in parallel on four buffers  <br /></td></tr>
<tr class="separator:a7ed6be7362e5ff7553fb4e7633bee76a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b1afbadee23111046746a4d302bb0d" id="r_a65b1afbadee23111046746a4d302bb0d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a65b1afbadee23111046746a4d302bb0d">IMB_KASUMI_F8_N_BUFFER</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len,  _count)&#160;&#160;&#160;        ((_mgr)-&gt;f8_n_buffer((_exp_key), (_iv), (_src), (_dst), (_len), (_count)))</td></tr>
<tr class="memdesc:a65b1afbadee23111046746a4d302bb0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Kasumi f8 operation on N buffers.  <br /></td></tr>
<tr class="separator:a65b1afbadee23111046746a4d302bb0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43c13bbdf83e2c75d6dd29d01dec4a1f" id="r_a43c13bbdf83e2c75d6dd29d01dec4a1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a43c13bbdf83e2c75d6dd29d01dec4a1f">IMB_KASUMI_F9_1_BUFFER</a>(_mgr,  _exp_key,  _src,  _len,  _tag)&#160;&#160;&#160;        ((_mgr)-&gt;f9_1_buffer((_exp_key), (_src), (_len), (_tag)))</td></tr>
<tr class="memdesc:a43c13bbdf83e2c75d6dd29d01dec4a1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Kasumi bit-level f9 operation on a single buffer.  <br /></td></tr>
<tr class="separator:a43c13bbdf83e2c75d6dd29d01dec4a1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66dcf1985c046ef619141a6706159940" id="r_a66dcf1985c046ef619141a6706159940"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a66dcf1985c046ef619141a6706159940">IMB_KASUMI_F9_1_BUFFER_USER</a>(_mgr,  _exp_key,  _iv,  _src,  _len,  _tag,  _dir)&#160;&#160;&#160;        ((_mgr)-&gt;f9_1_buffer_user((_exp_key), (_iv), (_src), (_len), (_tag), (_dir)))</td></tr>
<tr class="memdesc:a66dcf1985c046ef619141a6706159940"><td class="mdescLeft">&#160;</td><td class="mdescRight">Kasumi bit-level f9 operation on a single buffer.  <br /></td></tr>
<tr class="separator:a66dcf1985c046ef619141a6706159940"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafcc540a047a6036adf4da0613ea5272" id="r_aafcc540a047a6036adf4da0613ea5272"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aafcc540a047a6036adf4da0613ea5272">IMB_KASUMI_INIT_F8_KEY_SCHED</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;        ((_mgr)-&gt;kasumi_init_f8_key_sched((_key), (_exp_key)))</td></tr>
<tr class="separator:aafcc540a047a6036adf4da0613ea5272"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80a71ab95fd99c8427e171e45cebbd92" id="r_a80a71ab95fd99c8427e171e45cebbd92"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a80a71ab95fd99c8427e171e45cebbd92">IMB_KASUMI_INIT_F9_KEY_SCHED</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;        ((_mgr)-&gt;kasumi_init_f9_key_sched((_key), (_exp_key)))</td></tr>
<tr class="separator:a80a71ab95fd99c8427e171e45cebbd92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3812840fbe6b9b5ea5e84a6b86a7ed3" id="r_ae3812840fbe6b9b5ea5e84a6b86a7ed3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae3812840fbe6b9b5ea5e84a6b86a7ed3">IMB_KASUMI_KEY_SCHED_SIZE</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;kasumi_key_sched_size())</td></tr>
<tr class="separator:ae3812840fbe6b9b5ea5e84a6b86a7ed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d7a9e694b932b1c198782e22dc1ead5" id="r_a5d7a9e694b932b1c198782e22dc1ead5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5d7a9e694b932b1c198782e22dc1ead5">IMB_SNOW3G_F8_1_BUFFER_BIT</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len,  _offset)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_1_buffer_bit((_exp_key), (_iv), (_src), (_dst), (_len), (_offset)))</td></tr>
<tr class="separator:a5d7a9e694b932b1c198782e22dc1ead5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bcfbb70da38433f8bcd3468779026f1" id="r_a4bcfbb70da38433f8bcd3468779026f1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4bcfbb70da38433f8bcd3468779026f1">IMB_SNOW3G_F8_1_BUFFER</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_1_buffer((_exp_key), (_iv), (_src), (_dst), (_len)))</td></tr>
<tr class="separator:a4bcfbb70da38433f8bcd3468779026f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51085837f0775feae26fe3885f7459b7" id="r_a51085837f0775feae26fe3885f7459b7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a51085837f0775feae26fe3885f7459b7">IMB_SNOW3G_F8_2_BUFFER</a>(_mgr,  _exp_key,  _iv1,  _iv2,  _src1,  _dst1,  _len1,  _src2,  _dst2,  _len2)</td></tr>
<tr class="separator:a51085837f0775feae26fe3885f7459b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79b873457a74ad6c50e689709d79a0fb" id="r_a79b873457a74ad6c50e689709d79a0fb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a79b873457a74ad6c50e689709d79a0fb">IMB_SNOW3G_F8_4_BUFFER</a>(_mgr,  _exp_key,  _iv1,  _iv2,  _iv3,  _iv4,  _src1,  _dst1,  _len1,  _src2,  _dst2,  _len2,  _src3,  _dst3,  _len3,  _src4,  _dst4,  _len4)</td></tr>
<tr class="separator:a79b873457a74ad6c50e689709d79a0fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8536e68d053999123eb104762ef51932" id="r_a8536e68d053999123eb104762ef51932"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8536e68d053999123eb104762ef51932">IMB_SNOW3G_F8_8_BUFFER</a>(_mgr,  _exp_key,  _iv1,  _iv2,  _iv3,  _iv4,  _iv5,  _iv6,  _iv7,  _iv8,  _src1,  _dst1,  _len1,  _src2,  _dst2,  _len2,  _src3,  _dst3,  _len3,  _src4,  _dst4,  _len4,  _src5,  _dst5,  _len5,  _src6,  _dst6,  _len6,  _src7,  _dst7,  _len7,  _src8,  _dst8,  _len8)</td></tr>
<tr class="separator:a8536e68d053999123eb104762ef51932"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca8fb428a3b291950cd9dc6277ad801a" id="r_aca8fb428a3b291950cd9dc6277ad801a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aca8fb428a3b291950cd9dc6277ad801a">IMB_SNOW3G_F8_8_BUFFER_MULTIKEY</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_8_buffer_multikey((_exp_key), (_iv), (_src), (_dst), (_len)))</td></tr>
<tr class="separator:aca8fb428a3b291950cd9dc6277ad801a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4538b34eaf3a3d402041ada1e8d03e2c" id="r_a4538b34eaf3a3d402041ada1e8d03e2c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4538b34eaf3a3d402041ada1e8d03e2c">IMB_SNOW3G_F8_N_BUFFER</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len,  _count)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_n_buffer((_exp_key), (_iv), (_src), (_dst), (_len), (_count)))</td></tr>
<tr class="separator:a4538b34eaf3a3d402041ada1e8d03e2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a5ae1b04c7aee099c2f8fcbd488c38c" id="r_a4a5ae1b04c7aee099c2f8fcbd488c38c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4a5ae1b04c7aee099c2f8fcbd488c38c">IMB_SNOW3G_F8_N_BUFFER_MULTIKEY</a>(_mgr,  _exp_key,  _iv,  _src,  _dst,  _len,  _count)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_n_buffer_multikey((_exp_key), (_iv), (_src), (_dst), (_len), (_count)))</td></tr>
<tr class="separator:a4a5ae1b04c7aee099c2f8fcbd488c38c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6a951033156fc06c25afb4f79de8851" id="r_aa6a951033156fc06c25afb4f79de8851"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa6a951033156fc06c25afb4f79de8851">IMB_SNOW3G_F9_1_BUFFER</a>(_mgr,  _exp_key,  _iv,  _src,  _len,  _tag)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f9_1_buffer((_exp_key), (_iv), (_src), (_len), (_tag)))</td></tr>
<tr class="separator:aa6a951033156fc06c25afb4f79de8851"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5b5ff1cc9cf44ea8587a7d054b7459d" id="r_ac5b5ff1cc9cf44ea8587a7d054b7459d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac5b5ff1cc9cf44ea8587a7d054b7459d">IMB_SNOW3G_INIT_KEY_SCHED</a>(_mgr,  _key,  _exp_key)&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_init_key_sched((_key), (_exp_key)))</td></tr>
<tr class="separator:ac5b5ff1cc9cf44ea8587a7d054b7459d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ddd766994cb5d0b8e9ef5cd580cdcd2" id="r_a1ddd766994cb5d0b8e9ef5cd580cdcd2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1ddd766994cb5d0b8e9ef5cd580cdcd2">IMB_SNOW3G_KEY_SCHED_SIZE</a>(_mgr)&#160;&#160;&#160;((_mgr)-&gt;snow3g_key_sched_size())</td></tr>
<tr class="separator:a1ddd766994cb5d0b8e9ef5cd580cdcd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37996cede66ee8036b1b113af5f553ac" id="r_a37996cede66ee8036b1b113af5f553ac"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a37996cede66ee8036b1b113af5f553ac">IMB_HEC_32</a>(_mgr,  _src)&#160;&#160;&#160;((_mgr)-&gt;hec_32(_src))</td></tr>
<tr class="separator:a37996cede66ee8036b1b113af5f553ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0b62ba2c9fb07a1ad3c8105ec4374a4" id="r_aa0b62ba2c9fb07a1ad3c8105ec4374a4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa0b62ba2c9fb07a1ad3c8105ec4374a4">IMB_HEC_64</a>(_mgr,  _src)&#160;&#160;&#160;((_mgr)-&gt;hec_64(_src))</td></tr>
<tr class="separator:aa0b62ba2c9fb07a1ad3c8105ec4374a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a075757c7f7b132a8f2ae13c18f36e2af" id="r_a075757c7f7b132a8f2ae13c18f36e2af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a075757c7f7b132a8f2ae13c18f36e2af">IMB_CRC32_ETHERNET_FCS</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc32_ethernet_fcs(_src, _len)</td></tr>
<tr class="separator:a075757c7f7b132a8f2ae13c18f36e2af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78217e8116876c0ecbe82fd3d417cc1c" id="r_a78217e8116876c0ecbe82fd3d417cc1c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a78217e8116876c0ecbe82fd3d417cc1c">IMB_CRC16_X25</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc16_x25(_src, _len)</td></tr>
<tr class="separator:a78217e8116876c0ecbe82fd3d417cc1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86753ed15fcd8aab177d276dd4ebf169" id="r_a86753ed15fcd8aab177d276dd4ebf169"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a86753ed15fcd8aab177d276dd4ebf169">IMB_CRC32_SCTP</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc32_sctp(_src, _len)</td></tr>
<tr class="separator:a86753ed15fcd8aab177d276dd4ebf169"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ff60117e0ff260865cd80323306479b" id="r_a6ff60117e0ff260865cd80323306479b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6ff60117e0ff260865cd80323306479b">IMB_CRC24_LTE_A</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc24_lte_a(_src, _len)</td></tr>
<tr class="separator:a6ff60117e0ff260865cd80323306479b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae07e15be0652ca8faa23c6f907d83e03" id="r_ae07e15be0652ca8faa23c6f907d83e03"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae07e15be0652ca8faa23c6f907d83e03">IMB_CRC24_LTE_B</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc24_lte_b(_src, _len)</td></tr>
<tr class="separator:ae07e15be0652ca8faa23c6f907d83e03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe747d2365eb0393ab748c218029e3c6" id="r_abe747d2365eb0393ab748c218029e3c6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abe747d2365eb0393ab748c218029e3c6">IMB_CRC16_FP_DATA</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc16_fp_data(_src, _len)</td></tr>
<tr class="separator:abe747d2365eb0393ab748c218029e3c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae35b6b1b19ef6d599d47591f6c1e1732" id="r_ae35b6b1b19ef6d599d47591f6c1e1732"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae35b6b1b19ef6d599d47591f6c1e1732">IMB_CRC11_FP_HEADER</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc11_fp_header(_src, _len)</td></tr>
<tr class="separator:ae35b6b1b19ef6d599d47591f6c1e1732"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23fe73b1f9d40348bc98f92f859df60b" id="r_a23fe73b1f9d40348bc98f92f859df60b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a23fe73b1f9d40348bc98f92f859df60b">IMB_CRC7_FP_HEADER</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc7_fp_header(_src, _len)</td></tr>
<tr class="separator:a23fe73b1f9d40348bc98f92f859df60b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7406ab5572b4af93ff8dbbc8ee0c961" id="r_ac7406ab5572b4af93ff8dbbc8ee0c961"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac7406ab5572b4af93ff8dbbc8ee0c961">IMB_CRC10_IUUP_DATA</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc10_iuup_data(_src, _len)</td></tr>
<tr class="separator:ac7406ab5572b4af93ff8dbbc8ee0c961"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7c45b0788456473390ca178275f9a34" id="r_ac7c45b0788456473390ca178275f9a34"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac7c45b0788456473390ca178275f9a34">IMB_CRC6_IUUP_HEADER</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc6_iuup_header(_src, _len)</td></tr>
<tr class="separator:ac7c45b0788456473390ca178275f9a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0a9f19127f3417cc78cfdf9091af33e" id="r_ab0a9f19127f3417cc78cfdf9091af33e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab0a9f19127f3417cc78cfdf9091af33e">IMB_CRC32_WIMAX_OFDMA_DATA</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc32_wimax_ofdma_data(_src, _len)</td></tr>
<tr class="separator:ab0a9f19127f3417cc78cfdf9091af33e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0edd5fa8f3351ee214f7f2a267949f6d" id="r_a0edd5fa8f3351ee214f7f2a267949f6d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0edd5fa8f3351ee214f7f2a267949f6d">IMB_CRC8_WIMAX_OFDMA_HCS</a>(_mgr,  _src,  _len)&#160;&#160;&#160;(_mgr)-&gt;crc8_wimax_ofdma_hcs(_src, _len)</td></tr>
<tr class="separator:a0edd5fa8f3351ee214f7f2a267949f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c763b451aa0188d616d1cd127af8559" id="r_a4c763b451aa0188d616d1cd127af8559"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4c763b451aa0188d616d1cd127af8559">IMB_SM4_KEYEXP</a>(_mgr,  _key,  _exp_enc_key,  _exp_dec_key)&#160;&#160;&#160;        ((_mgr)-&gt;sm4_keyexp((_key), (_exp_enc_key), (_exp_dec_key)))</td></tr>
<tr class="separator:a4c763b451aa0188d616d1cd127af8559"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:aed2387ba36d72c3d148fcb9d2802ccf5" id="r_aed2387ba36d72c3d148fcb9d2802ccf5"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aed2387ba36d72c3d148fcb9d2802ccf5">IMB_JOB</a></td></tr>
<tr class="separator:aed2387ba36d72c3d148fcb9d2802ccf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82d6866ebcf1bd46b684fe473b4b73f2" id="r_a82d6866ebcf1bd46b684fe473b4b73f2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structkasumi__key__sched__s.html">kasumi_key_sched_s</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a></td></tr>
<tr class="separator:a82d6866ebcf1bd46b684fe473b4b73f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0c38ca0a5aac81d8db7e0cc2811426b" id="r_af0c38ca0a5aac81d8db7e0cc2811426b"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af0c38ca0a5aac81d8db7e0cc2811426b">init_mb_mgr_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td></tr>
<tr class="separator:af0c38ca0a5aac81d8db7e0cc2811426b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a533d852e3b65e9e5978fec37da43b5" id="r_a5a533d852e3b65e9e5978fec37da43b5"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5a533d852e3b65e9e5978fec37da43b5">get_next_job_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td></tr>
<tr class="separator:a5a533d852e3b65e9e5978fec37da43b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41297d789b434157e746e338f0af96ec" id="r_a41297d789b434157e746e338f0af96ec"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a41297d789b434157e746e338f0af96ec">submit_job_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td></tr>
<tr class="separator:a41297d789b434157e746e338f0af96ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8cb9a545cdef14f60f36fe8888e6e7c" id="r_ac8cb9a545cdef14f60f36fe8888e6e7c"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac8cb9a545cdef14f60f36fe8888e6e7c">get_completed_job_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td></tr>
<tr class="separator:ac8cb9a545cdef14f60f36fe8888e6e7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae64d0f677e42b8f8d50289113cf5e01e" id="r_ae64d0f677e42b8f8d50289113cf5e01e"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae64d0f677e42b8f8d50289113cf5e01e">flush_job_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td></tr>
<tr class="separator:ae64d0f677e42b8f8d50289113cf5e01e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9884ae92b598dd504f7d0ef8be5051d6" id="r_a9884ae92b598dd504f7d0ef8be5051d6"><td class="memItemLeft" align="right" valign="top">typedef uint32_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9884ae92b598dd504f7d0ef8be5051d6">queue_size_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td></tr>
<tr class="separator:a9884ae92b598dd504f7d0ef8be5051d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeed8e5ec28aba6b8deef269b7c4bb28" id="r_aaeed8e5ec28aba6b8deef269b7c4bb28"><td class="memItemLeft" align="right" valign="top">typedef uint32_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aaeed8e5ec28aba6b8deef269b7c4bb28">burst_fn_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, const uint32_t, struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> **)</td></tr>
<tr class="separator:aaeed8e5ec28aba6b8deef269b7c4bb28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4bd89ab3cb1341eb4f30c4c501a9009" id="r_ac4bd89ab3cb1341eb4f30c4c501a9009"><td class="memItemLeft" align="right" valign="top">typedef uint32_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac4bd89ab3cb1341eb4f30c4c501a9009">submit_cipher_burst_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *, const uint32_t, const <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> cipher, const <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> dir, const <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a> key_size)</td></tr>
<tr class="separator:ac4bd89ab3cb1341eb4f30c4c501a9009"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f6fca648737cec9ee869786e9c240b5" id="r_a4f6fca648737cec9ee869786e9c240b5"><td class="memItemLeft" align="right" valign="top">typedef uint32_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4f6fca648737cec9ee869786e9c240b5">submit_hash_burst_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *, const uint32_t, const <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a> hash)</td></tr>
<tr class="separator:a4f6fca648737cec9ee869786e9c240b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60de89a391c8d6d9c51c742a87effb6f" id="r_a60de89a391c8d6d9c51c742a87effb6f"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a60de89a391c8d6d9c51c742a87effb6f">keyexp_t</a>) (const void *, void *, void *)</td></tr>
<tr class="separator:a60de89a391c8d6d9c51c742a87effb6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab07996d622d682adc1db8286e633cb3" id="r_aab07996d622d682adc1db8286e633cb3"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aab07996d622d682adc1db8286e633cb3">cmac_subkey_gen_t</a>) (const void *, void *, void *)</td></tr>
<tr class="separator:aab07996d622d682adc1db8286e633cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aade58eb541a45650ed7d875dc2be97fa" id="r_aade58eb541a45650ed7d875dc2be97fa"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aade58eb541a45650ed7d875dc2be97fa">hash_one_block_t</a>) (const void *, void *)</td></tr>
<tr class="separator:aade58eb541a45650ed7d875dc2be97fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afacacc8b74c05c80a0ee255c68637490" id="r_afacacc8b74c05c80a0ee255c68637490"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afacacc8b74c05c80a0ee255c68637490">hash_fn_t</a>) (const void *, const uint64_t, void *)</td></tr>
<tr class="separator:afacacc8b74c05c80a0ee255c68637490"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb36f71b9fb4d928c2ad9fa462b80ae6" id="r_abb36f71b9fb4d928c2ad9fa462b80ae6"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abb36f71b9fb4d928c2ad9fa462b80ae6">xcbc_keyexp_t</a>) (const void *, void *, void *, void *)</td></tr>
<tr class="separator:abb36f71b9fb4d928c2ad9fa462b80ae6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60a93569304a978c798bb8c4a4f7f52f" id="r_a60a93569304a978c798bb8c4a4f7f52f"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a60a93569304a978c798bb8c4a4f7f52f">des_keysched_t</a>) (uint64_t *, const void *)</td></tr>
<tr class="separator:a60a93569304a978c798bb8c4a4f7f52f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb837fda81cdf56ffcfa4e68b5877a35" id="r_aeb837fda81cdf56ffcfa4e68b5877a35"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aeb837fda81cdf56ffcfa4e68b5877a35">aes_cfb_t</a>) (void *, const void *, const void *, const void *, uint64_t)</td></tr>
<tr class="separator:aeb837fda81cdf56ffcfa4e68b5877a35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71fb9f25bcab533a98f3d1c5cc2c7f48" id="r_a71fb9f25bcab533a98f3d1c5cc2c7f48"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a71fb9f25bcab533a98f3d1c5cc2c7f48">aes_gcm_enc_dec_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, uint8_t const *, uint64_t, const uint8_t *, uint8_t const *, uint64_t, uint8_t *, uint64_t)</td></tr>
<tr class="separator:a71fb9f25bcab533a98f3d1c5cc2c7f48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5bfb31d18fdc55451cd325c4af032c7" id="r_ac5bfb31d18fdc55451cd325c4af032c7"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac5bfb31d18fdc55451cd325c4af032c7">aes_gcm_enc_dec_iv_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, uint8_t const *, const uint64_t, const uint8_t *, uint8_t const *, const uint64_t, uint8_t *, const uint64_t, const uint64_t)</td></tr>
<tr class="separator:ac5bfb31d18fdc55451cd325c4af032c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adeecd4bac067493d8465e8d7b6b7dd6d" id="r_adeecd4bac067493d8465e8d7b6b7dd6d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adeecd4bac067493d8465e8d7b6b7dd6d">aes_gcm_init_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, uint8_t const *, uint64_t)</td></tr>
<tr class="separator:adeecd4bac067493d8465e8d7b6b7dd6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f909001359ad986640155f8756a11d" id="r_a65f909001359ad986640155f8756a11d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a65f909001359ad986640155f8756a11d">aes_gcm_init_var_iv_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, const uint64_t, const uint8_t *, const uint64_t)</td></tr>
<tr class="separator:a65f909001359ad986640155f8756a11d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af701adcd98fd95084d76e0cb0f926fef" id="r_af701adcd98fd95084d76e0cb0f926fef"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af701adcd98fd95084d76e0cb0f926fef">aes_gcm_enc_dec_update_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, const uint8_t *, uint64_t)</td></tr>
<tr class="separator:af701adcd98fd95084d76e0cb0f926fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c85430db7a8b695a2836dcb96653bc5" id="r_a8c85430db7a8b695a2836dcb96653bc5"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8c85430db7a8b695a2836dcb96653bc5">aes_gcm_enc_dec_finalize_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, uint64_t)</td></tr>
<tr class="separator:a8c85430db7a8b695a2836dcb96653bc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab50906d68121cb8e6edf2a3493a60c5c" id="r_ab50906d68121cb8e6edf2a3493a60c5c"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab50906d68121cb8e6edf2a3493a60c5c">aes_gcm_precomp_t</a>) (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *)</td></tr>
<tr class="separator:ab50906d68121cb8e6edf2a3493a60c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11e10a3ac7a08801dc68949fb0f428af" id="r_a11e10a3ac7a08801dc68949fb0f428af"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a11e10a3ac7a08801dc68949fb0f428af">aes_gcm_pre_t</a>) (const void *, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *)</td></tr>
<tr class="separator:a11e10a3ac7a08801dc68949fb0f428af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31987251c968435d720e8656ae4621a0" id="r_a31987251c968435d720e8656ae4621a0"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a31987251c968435d720e8656ae4621a0">aes_gmac_init_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, const uint64_t)</td></tr>
<tr class="separator:a31987251c968435d720e8656ae4621a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba0ac59064802c6d0a182a5164568c18" id="r_aba0ac59064802c6d0a182a5164568c18"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aba0ac59064802c6d0a182a5164568c18">aes_gmac_update_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, const uint64_t)</td></tr>
<tr class="separator:aba0ac59064802c6d0a182a5164568c18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3f75897a0ec8b3f22c4e2b01f7f48b7" id="r_af3f75897a0ec8b3f22c4e2b01f7f48b7"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af3f75897a0ec8b3f22c4e2b01f7f48b7">aes_gmac_finalize_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, const uint64_t)</td></tr>
<tr class="separator:af3f75897a0ec8b3f22c4e2b01f7f48b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b0b9ffa331f8d675d24911639f0374f" id="r_a4b0b9ffa331f8d675d24911639f0374f"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4b0b9ffa331f8d675d24911639f0374f">chacha_poly_init_t</a>) (const void *, struct <a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a> *, const void *, const void *, const uint64_t)</td></tr>
<tr class="separator:a4b0b9ffa331f8d675d24911639f0374f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a437de868b8dba4f9b878d99a82f80548" id="r_a437de868b8dba4f9b878d99a82f80548"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a437de868b8dba4f9b878d99a82f80548">chacha_poly_enc_dec_update_t</a>) (const void *, struct <a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a> *, void *, const void *, const uint64_t)</td></tr>
<tr class="separator:a437de868b8dba4f9b878d99a82f80548"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a96f063bf1bd07de158985b57cff4a0" id="r_a1a96f063bf1bd07de158985b57cff4a0"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1a96f063bf1bd07de158985b57cff4a0">chacha_poly_finalize_t</a>) (struct <a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a> *, void *, const uint64_t)</td></tr>
<tr class="separator:a1a96f063bf1bd07de158985b57cff4a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12e0c05f0ecec8d75d4b288a7ec11c84" id="r_a12e0c05f0ecec8d75d4b288a7ec11c84"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a12e0c05f0ecec8d75d4b288a7ec11c84">ghash_t</a>) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, const void *, const uint64_t, void *, const uint64_t)</td></tr>
<tr class="separator:a12e0c05f0ecec8d75d4b288a7ec11c84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a3032f0698c42bd486d053e90c44fdd" id="r_a0a3032f0698c42bd486d053e90c44fdd"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0a3032f0698c42bd486d053e90c44fdd">zuc_eea3_1_buffer_t</a>) (const void *, const void *, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:a0a3032f0698c42bd486d053e90c44fdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7df2e3f063333d677ef7668626126c4d" id="r_a7df2e3f063333d677ef7668626126c4d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7df2e3f063333d677ef7668626126c4d">zuc_eea3_4_buffer_t</a>) (const void *const *, const void *const *, const void *const *, void **, const uint32_t *)</td></tr>
<tr class="separator:a7df2e3f063333d677ef7668626126c4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a303f2dd11b1193938596b4ec69edf8cc" id="r_a303f2dd11b1193938596b4ec69edf8cc"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a303f2dd11b1193938596b4ec69edf8cc">zuc_eea3_n_buffer_t</a>) (const void *const *, const void *const *, const void *const *, void **, const uint32_t *, const uint32_t)</td></tr>
<tr class="separator:a303f2dd11b1193938596b4ec69edf8cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95ed5580686f708ba2313179cd6064a8" id="r_a95ed5580686f708ba2313179cd6064a8"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a95ed5580686f708ba2313179cd6064a8">zuc_eia3_1_buffer_t</a>) (const void *, const void *, const void *, const uint32_t, uint32_t *)</td></tr>
<tr class="separator:a95ed5580686f708ba2313179cd6064a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada45082bb04dd727c0deec5c4fc96fed" id="r_ada45082bb04dd727c0deec5c4fc96fed"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ada45082bb04dd727c0deec5c4fc96fed">zuc_eia3_n_buffer_t</a>) (const void *const *, const void *const *, const void *const *, const uint32_t *, uint32_t **, const uint32_t)</td></tr>
<tr class="separator:ada45082bb04dd727c0deec5c4fc96fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89fe975f0388b71765be494d04b034f4" id="r_a89fe975f0388b71765be494d04b034f4"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a89fe975f0388b71765be494d04b034f4">kasumi_f8_1_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:a89fe975f0388b71765be494d04b034f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81afa744fb5669fe37cf0dce2193d8a7" id="r_a81afa744fb5669fe37cf0dce2193d8a7"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a81afa744fb5669fe37cf0dce2193d8a7">kasumi_f8_1_buffer_bit_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const void *, void *, const uint32_t, const uint32_t)</td></tr>
<tr class="separator:a81afa744fb5669fe37cf0dce2193d8a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1eb074f5da469fa655d1404be8701dd" id="r_af1eb074f5da469fa655d1404be8701dd"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af1eb074f5da469fa655d1404be8701dd">kasumi_f8_2_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const uint64_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:af1eb074f5da469fa655d1404be8701dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53ecac7e009fcbeee603f975a45d3012" id="r_a53ecac7e009fcbeee603f975a45d3012"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a53ecac7e009fcbeee603f975a45d3012">kasumi_f8_3_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const uint64_t, const uint64_t, const void *, void *, const void *, void *, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:a53ecac7e009fcbeee603f975a45d3012"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accf08a616e22a2c56e6a37d56f38b354" id="r_accf08a616e22a2c56e6a37d56f38b354"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#accf08a616e22a2c56e6a37d56f38b354">kasumi_f8_4_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const uint64_t, const uint64_t, const uint64_t, const void *, void *, const void *, void *, const void *, void *, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:accf08a616e22a2c56e6a37d56f38b354"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51bbde186cdd437b6f9448e19a58e8a1" id="r_a51bbde186cdd437b6f9448e19a58e8a1"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a51bbde186cdd437b6f9448e19a58e8a1">kasumi_f8_n_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t *, const void *const *, void **, const uint32_t *, const uint32_t)</td></tr>
<tr class="separator:a51bbde186cdd437b6f9448e19a58e8a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac17147d04602964bea59322ff31ebf59" id="r_ac17147d04602964bea59322ff31ebf59"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac17147d04602964bea59322ff31ebf59">kasumi_f9_1_buffer_user_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const void *, const uint32_t, void *, const uint32_t)</td></tr>
<tr class="separator:ac17147d04602964bea59322ff31ebf59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b02114f003b5fe0e1ccbfdc13ac55e4" id="r_a8b02114f003b5fe0e1ccbfdc13ac55e4"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8b02114f003b5fe0e1ccbfdc13ac55e4">kasumi_f9_1_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const void *, const uint32_t, void *)</td></tr>
<tr class="separator:a8b02114f003b5fe0e1ccbfdc13ac55e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bec62666456d8962676961cf187ac80" id="r_a7bec62666456d8962676961cf187ac80"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7bec62666456d8962676961cf187ac80">kasumi_init_f8_key_sched_t</a>) (const void *, <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *)</td></tr>
<tr class="separator:a7bec62666456d8962676961cf187ac80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b30db8462aca1c039c3fd20646f342c" id="r_a8b30db8462aca1c039c3fd20646f342c"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8b30db8462aca1c039c3fd20646f342c">kasumi_init_f9_key_sched_t</a>) (const void *, <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *)</td></tr>
<tr class="separator:a8b30db8462aca1c039c3fd20646f342c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7444c36024a63025e7682c16946a00a" id="r_ad7444c36024a63025e7682c16946a00a"><td class="memItemLeft" align="right" valign="top">typedef size_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad7444c36024a63025e7682c16946a00a">kasumi_key_sched_size_t</a>) (void)</td></tr>
<tr class="separator:ad7444c36024a63025e7682c16946a00a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae50b48832b41b4b468cf933b44849213" id="r_ae50b48832b41b4b468cf933b44849213"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structsnow3g__key__schedule__s.html">snow3g_key_schedule_s</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a></td></tr>
<tr class="separator:ae50b48832b41b4b468cf933b44849213"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a281315fb8b441d837ebed541b3a23380" id="r_a281315fb8b441d837ebed541b3a23380"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a281315fb8b441d837ebed541b3a23380">snow3g_f8_1_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:a281315fb8b441d837ebed541b3a23380"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bd00b31d12260305accf0d37b60c958" id="r_a7bd00b31d12260305accf0d37b60c958"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7bd00b31d12260305accf0d37b60c958">snow3g_f8_1_buffer_bit_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, void *, const uint32_t, const uint32_t)</td></tr>
<tr class="separator:a7bd00b31d12260305accf0d37b60c958"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e8912e7e55a2ac891f85c19e7f29328" id="r_a4e8912e7e55a2ac891f85c19e7f29328"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4e8912e7e55a2ac891f85c19e7f29328">snow3g_f8_2_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:a4e8912e7e55a2ac891f85c19e7f29328"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae13b1154dcc13ca562e81471659d6099" id="r_ae13b1154dcc13ca562e81471659d6099"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae13b1154dcc13ca562e81471659d6099">snow3g_f8_4_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const void *, const void *, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:ae13b1154dcc13ca562e81471659d6099"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6155f472c6794e88289235752d83154a" id="r_a6155f472c6794e88289235752d83154a"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6155f472c6794e88289235752d83154a">snow3g_f8_8_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const void *, const void *, const void *, const void *, const void *, const void *, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td></tr>
<tr class="separator:a6155f472c6794e88289235752d83154a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaea53cd00d9e0129c7822c644c5f97d7" id="r_aaea53cd00d9e0129c7822c644c5f97d7"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aaea53cd00d9e0129c7822c644c5f97d7">snow3g_f8_8_buffer_multikey_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *const[], const void *const[], const void *const[], void *[], const uint32_t[])</td></tr>
<tr class="separator:aaea53cd00d9e0129c7822c644c5f97d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a876cc51e6e6f2dd55134891573891833" id="r_a876cc51e6e6f2dd55134891573891833"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a876cc51e6e6f2dd55134891573891833">snow3g_f8_n_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *const[], const void *const[], void *[], const uint32_t[], const uint32_t)</td></tr>
<tr class="separator:a876cc51e6e6f2dd55134891573891833"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed316ea9b9de140a52506ea1c63f56aa" id="r_aed316ea9b9de140a52506ea1c63f56aa"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aed316ea9b9de140a52506ea1c63f56aa">snow3g_f8_n_buffer_multikey_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *const[], const void *const[], const void *const[], void *[], const uint32_t[], const uint32_t)</td></tr>
<tr class="separator:aed316ea9b9de140a52506ea1c63f56aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7a48386f7190b4e46cd113eee413733" id="r_ae7a48386f7190b4e46cd113eee413733"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae7a48386f7190b4e46cd113eee413733">snow3g_f9_1_buffer_t</a>) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const uint64_t, void *)</td></tr>
<tr class="separator:ae7a48386f7190b4e46cd113eee413733"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfa182361f1c179d75129b4e46841af5" id="r_adfa182361f1c179d75129b4e46841af5"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adfa182361f1c179d75129b4e46841af5">snow3g_init_key_sched_t</a>) (const void *, <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *)</td></tr>
<tr class="separator:adfa182361f1c179d75129b4e46841af5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad78a4f1c0d6de808f7046c0fbcd98d8f" id="r_ad78a4f1c0d6de808f7046c0fbcd98d8f"><td class="memItemLeft" align="right" valign="top">typedef size_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad78a4f1c0d6de808f7046c0fbcd98d8f">snow3g_key_sched_size_t</a>) (void)</td></tr>
<tr class="separator:ad78a4f1c0d6de808f7046c0fbcd98d8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa34b11bf4be97c764b283aedc0589575" id="r_aa34b11bf4be97c764b283aedc0589575"><td class="memItemLeft" align="right" valign="top">typedef uint32_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa34b11bf4be97c764b283aedc0589575">hec_32_t</a>) (const uint8_t *)</td></tr>
<tr class="separator:aa34b11bf4be97c764b283aedc0589575"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9afd4ee91f0d82729afcf5f1cdcb808" id="r_aa9afd4ee91f0d82729afcf5f1cdcb808"><td class="memItemLeft" align="right" valign="top">typedef uint64_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa9afd4ee91f0d82729afcf5f1cdcb808">hec_64_t</a>) (const uint8_t *)</td></tr>
<tr class="separator:aa9afd4ee91f0d82729afcf5f1cdcb808"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56dd197c301ad27dc9ec0862721cb73d" id="r_a56dd197c301ad27dc9ec0862721cb73d"><td class="memItemLeft" align="right" valign="top">typedef uint32_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a56dd197c301ad27dc9ec0862721cb73d">crc32_fn_t</a>) (const void *, const uint64_t)</td></tr>
<tr class="separator:a56dd197c301ad27dc9ec0862721cb73d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad907e0caa52fcb257275464179620643" id="r_ad907e0caa52fcb257275464179620643"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad907e0caa52fcb257275464179620643">aes_ecb_quic_t</a>) (const void *, const void *, void *out, uint64_t)</td></tr>
<tr class="separator:ad907e0caa52fcb257275464179620643"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1af4a857337cd5ccd97a4801feede864" id="r_a1af4a857337cd5ccd97a4801feede864"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1af4a857337cd5ccd97a4801feede864">chacha20_poly1305_quic_t</a>) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *)</td></tr>
<tr class="separator:a1af4a857337cd5ccd97a4801feede864"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed418d6f1ec4d8a2d29c3ca2cec05f49" id="r_aed418d6f1ec4d8a2d29c3ca2cec05f49"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aed418d6f1ec4d8a2d29c3ca2cec05f49">chacha20_hp_quic_t</a>) (const void *, const void *const *, void **, const uint64_t)</td></tr>
<tr class="separator:aed418d6f1ec4d8a2d29c3ca2cec05f49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a071ff3c56e36f25d0df0e8505121bd68" id="r_a071ff3c56e36f25d0df0e8505121bd68"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a071ff3c56e36f25d0df0e8505121bd68">sm4_keyexp_t</a>) (const void *, void *, void *)</td></tr>
<tr class="separator:a071ff3c56e36f25d0df0e8505121bd68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fc0ee92d9cbee157810685d592cc13a" id="r_a6fc0ee92d9cbee157810685d592cc13a"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6fc0ee92d9cbee157810685d592cc13a">imb_self_test_cb_t</a>) (void *cb_arg, const <a class="el" href="structIMB__SELF__TEST__CALLBACK__DATA.html">IMB_SELF_TEST_CALLBACK_DATA</a> *data)</td></tr>
<tr class="separator:a6fc0ee92d9cbee157810685d592cc13a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d466496b4adfea3f9bc0881f11fe551" id="r_a6d466496b4adfea3f9bc0881f11fe551"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6d466496b4adfea3f9bc0881f11fe551">IMB_MGR</a></td></tr>
<tr class="separator:a6d466496b4adfea3f9bc0881f11fe551"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ad138a5bf5508a0be5d3d61f018d5ebb6" id="r_ad138a5bf5508a0be5d3d61f018d5ebb6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6">IMB_ARCH</a> { <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6a1ff5121849f183accf83fd652b854733">IMB_ARCH_NONE</a> = 0
, <a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6a3c2ccbe898a62cbaed5bad7717fdfa16">IMB_ARCH_SSE</a>
, <a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6a701628fddfdd84d56495839f20573de6">IMB_ARCH_AVX2</a>
, <a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6a1df4f12c5769b52a95f1a4b89a8163c8">IMB_ARCH_AVX512</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6ae6536a65a8d0cd53faa325d5ee4dcdda">IMB_ARCH_NUM</a>
<br />
 }</td></tr>
<tr class="separator:ad138a5bf5508a0be5d3d61f018d5ebb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd5f50bd2277b5f92f0ec786c8f066ab" id="r_afd5f50bd2277b5f92f0ec786c8f066ab"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066ab">IMB_STATUS</a> { <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066abaa562b01ade81e0196fc23cd79d534141">IMB_STATUS_BEING_PROCESSED</a> = 0
, <a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066aba6fcaccd3853c9e8cf3b402edc3e22089">IMB_STATUS_COMPLETED_CIPHER</a> = 1
, <a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066aba79df83a15cdafc2a6c79751457ae9792">IMB_STATUS_COMPLETED_AUTH</a> = 2
, <a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066aba508a9f195acee09621542ca687ba2341">IMB_STATUS_COMPLETED</a> = 3
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066abaee85b6a8bc33e0b39001e9ff538540b7">IMB_STATUS_INVALID_ARGS</a> = 4
, <a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066aba546465b9d4cfb1f9c98c864bf5ed51fb">IMB_STATUS_INTERNAL_ERROR</a>
, <a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066aba0ef40895610ac6343d171f65be676a1d">IMB_STATUS_ERROR</a>
<br />
 }</td></tr>
<tr class="separator:afd5f50bd2277b5f92f0ec786c8f066ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa12c6dbc4b212887ef528c215f513e0b" id="r_aa12c6dbc4b212887ef528c215f513e0b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0b">IMB_ERR</a> { <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba3f9d55f356a0caf413d2114a468ba659">IMB_ERR_MIN</a> = 2000
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba9ba69cc32a2d17e3e7b4d4c982f26abd">IMB_ERR_NULL_MBMGR</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba4bc6a784afa9bb88c5afe4fd1b5f610d">IMB_ERR_JOB_NULL_SRC</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba55b3ddc1a48cb14ad020031b8d5b4927">IMB_ERR_JOB_NULL_DST</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba22402460340d6b34492ece390a7913c0">IMB_ERR_JOB_NULL_KEY</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba0d35070d6476cde0202deb5531ae09c2">IMB_ERR_JOB_NULL_IV</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba503544043c60c2195003c00b18141beb">IMB_ERR_JOB_NULL_AUTH</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba3ef3d3180e3052862c796cf89320d60c">IMB_ERR_JOB_NULL_AAD</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bae1c9e58d4be3fdd7bb37247667472920">IMB_ERR_JOB_CIPH_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba69dd17473dc4afb2f04c417fe6882608">IMB_ERR_JOB_AUTH_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba390f91827f87bbd3233ad6e1f104b2b4">IMB_ERR_JOB_IV_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0badfea107da94936d30900f23ad22b5285">IMB_ERR_JOB_KEY_LEN</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba1b7e4c43808275e9cd63ca21091e5ab2">IMB_ERR_JOB_AUTH_TAG_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba31a6b672b95d7d100a97fa6d788c0dd6">IMB_ERR_JOB_AAD_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba207979780b5d8472dfef2f5e12998d22">IMB_ERR_JOB_SRC_OFFSET</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bacaec18a061b4bf792178408d69775950">IMB_ERR_JOB_CHAIN_ORDER</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba61a411feda0e8cf5aff8c58ad2e92bdd">IMB_ERR_CIPH_MODE</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba8ac2802661bd9928d0c766129db2a814">IMB_ERR_HASH_ALGO</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba97fb89f93299f67de86aac919bb83aa9">IMB_ERR_JOB_NULL_AUTH_KEY</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba05f9212af539a22ad65b12a9abc8e5c0">IMB_ERR_JOB_NULL_SGL_CTX</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba983561202b1623b0bd1f691bd6036039">IMB_ERR_JOB_NULL_NEXT_IV</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bace7e834842ddef5b063c99544d00b303">IMB_ERR_JOB_PON_PLI</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba308819b7cbdadfd6bbee290408880302">IMB_ERR_NULL_SRC</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba1a61dcc99a1a9725c89076dec3c02e02">IMB_ERR_NULL_DST</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba63029e3673eef74345ad80867f7ba0ef">IMB_ERR_NULL_KEY</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba3b60a570372529486da69c6d2b7be382">IMB_ERR_NULL_EXP_KEY</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bafcfe882ee9730fd1724b587106f2f419">IMB_ERR_NULL_IV</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba1e20954ec8a501093175d640631550c1">IMB_ERR_NULL_AUTH</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0badc7d17d90012d5c14fd8a12d9ea12543">IMB_ERR_NULL_AAD</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bab5a2b4c1df7778c3efc236976062ed94">IMB_ERR_CIPH_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bafe5af1c17e1caece14b3a5f659a1336d">IMB_ERR_AUTH_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0baac8500b58709f0bd05ad129337bb6af2">IMB_ERR_IV_LEN</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba8d6b3ea721216bb12fbe40e72a5bd768">IMB_ERR_KEY_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba6af5bd8fb7690b46afe3d2c1e623808e">IMB_ERR_AUTH_TAG_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba0ad3ade3fe22c5887d9bf444ff3923aa">IMB_ERR_AAD_LEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba20dfbdc8feb8332a9efe51de48fa6e09">IMB_ERR_SRC_OFFSET</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0baa4f5aeab78ed40a4c19389b8f691306c">IMB_ERR_NULL_AUTH_KEY</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba0b57ec134f6e10e11c3fbcf77ede282d">IMB_ERR_NULL_CTX</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bacb9286af7533993ab79982b288aab97a">IMB_ERR_JOB_NULL_HMAC_OPAD</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba15f55e87bb42cf5494dd01b9a1c4d712">IMB_ERR_JOB_NULL_HMAC_IPAD</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba69bf9e54fdf84b154284eab071c98804">IMB_ERR_JOB_NULL_XCBC_K1_EXP</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bad7fbd09092821fb8605e11384dcdc428">IMB_ERR_JOB_NULL_XCBC_K2</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0baf12955208a99c8feeeb580fee940b7c3">IMB_ERR_JOB_NULL_XCBC_K3</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bacbf5d148be9963df1d46400ff26396db">IMB_ERR_JOB_CIPH_DIR</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba6c97704719f286b14204ca144bbdc7a9">IMB_ERR_JOB_NULL_GHASH_INIT_TAG</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0babdd0b7bc92e7dcf166d36a9bcd118d60">IMB_ERR_MISSING_CPUFLAGS_INIT_MGR</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba007c436f8e21f317e8f9225c5b009d38">IMB_ERR_NULL_JOB</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba4f73ed8232981b84df1fee21024e01ac">IMB_ERR_QUEUE_SPACE</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba99d845a176cd571dd6f99b0a430291c6">IMB_ERR_NULL_BURST</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bae2bc238b157942636836eaf0eedb5ddf">IMB_ERR_BURST_SIZE</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bae4584575cf7134ba02ca1d38bb3f6444">IMB_ERR_BURST_OOO</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba1873d38b8aaf5ebcd3f542b15c418829">IMB_ERR_SELFTEST</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba436eb6f9e045a02e3ad5998da8c13d78">IMB_ERR_BURST_SUITE_ID</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0ba932b3d39bef22ae92d181a207563392f">IMB_ERR_JOB_SGL_STATE</a>
, <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0bac773be615f9904fd69e961451fb0fac6">IMB_ERR_MAX</a>
<br />
 }</td></tr>
<tr class="separator:aa12c6dbc4b212887ef528c215f513e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3be1dfb4cbd4bd13dfdb2cf881f8334c" id="r_a3be1dfb4cbd4bd13dfdb2cf881f8334c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> { <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca0e2ebfcfd101ab4a39129082b2de517f">IMB_CIPHER_CBC</a> = 1
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca5b4126e439eaff0975846425594201ea">IMB_CIPHER_CNTR</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cae37b15031c4f905008e7b00f618baec0">IMB_CIPHER_CTR</a> = IMB_CIPHER_CNTR
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca0bebd24d7311dedce100455dd3a8ddf6">IMB_CIPHER_NULL</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334caed8ba68d7d2d7602407f17305d1d99b7">IMB_CIPHER_DOCSIS_SEC_BPI</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca0f97344e525fef167a92d1a59a0492aa">IMB_CIPHER_GCM</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca4301726c71a4faf412a1a011cc4f0df8">IMB_CIPHER_CUSTOM</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca049e85047492494fac0a4ec785707851">IMB_CIPHER_DES</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334caf9d62e1ff3a1a8b2ed1dcc515a3ffe1b">IMB_CIPHER_DOCSIS_DES</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca7d3946d77e4364bc45a9e72499bf817f">IMB_CIPHER_CCM</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca639b1382de364a2b810f7876189bc64f">IMB_CIPHER_DES3</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca896285cd2fe56f73011b908e490cbbea">IMB_CIPHER_PON_AES_CNTR</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca625873443fc051fe1a6623adfe8e9145">IMB_CIPHER_PON_AES_CTR</a> = IMB_CIPHER_PON_AES_CNTR
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca357dec895f8dfa3371add1feaa001f56">IMB_CIPHER_ECB</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca6f69815480531651948b5549fa84023a">IMB_CIPHER_CNTR_BITLEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cae7239cb72b2afa0033ebca478af0078e">IMB_CIPHER_CTR_BITLEN</a> = IMB_CIPHER_CNTR_BITLEN
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca3618bfaab3c19aabc8a93a03ae121efc">IMB_CIPHER_ZUC_EEA3</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca88c3ff9a6816b3629dc5b4815b47607e">IMB_CIPHER_SNOW3G_UEA2_BITLEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca3f7a3edb272955efea015c5bb8572e3b">IMB_CIPHER_KASUMI_UEA1_BITLEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca71d87659793f7377d1d8b3315a3559f8">IMB_CIPHER_CBCS_1_9</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca39d8d7ebca424a1c1a65bc04b5f64741">IMB_CIPHER_CHACHA20</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334caa5c375f97dce274a2446c8abf90aa61a">IMB_CIPHER_CHACHA20_POLY1305</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca40926d8b731a401ec3e86ffa2089a1eb">IMB_CIPHER_CHACHA20_POLY1305_SGL</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cafea56410df85a0b006963e50fba78465">IMB_CIPHER_SNOW_V</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cada26994f8467300f862dbf45b5a22409">IMB_CIPHER_SNOW_V_AEAD</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca48e024bc875c46b714b19a1c19908918">IMB_CIPHER_GCM_SGL</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca7adbd2a1ad3472becfc1e39e4dd102ba">IMB_CIPHER_SM4_ECB</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cad491b9e7827ce4556c81b430a7e78e96">IMB_CIPHER_SM4_CBC</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cae5e7135341635a0f358339bb320b5b91">IMB_CIPHER_CFB</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca8ed4f2bf5a5ee207cab40d64f3f797aa">IMB_CIPHER_SM4_CNTR</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334cac730e03aa6877b1cc210a19ab6501151">IMB_CIPHER_SM4_CTR</a> = IMB_CIPHER_SM4_CNTR
, <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca948e8919158b0d8171ee64cd949de4eb">IMB_CIPHER_SM4_GCM</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334ca78c470d405fb36037e41224b99d23c75">IMB_CIPHER_NUM</a>
<br />
 }</td></tr>
<tr class="separator:a3be1dfb4cbd4bd13dfdb2cf881f8334c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdbf0bd32da801c52993cadb7a49c9ee" id="r_abdbf0bd32da801c52993cadb7a49c9ee"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> { <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9eeabed12e936823e8f8b2de70388a2d15ce">IMB_DIR_ENCRYPT</a> = 1
, <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9eea881652011955c227d94a881d2d2c5c59">IMB_DIR_DECRYPT</a>
 }</td></tr>
<tr class="separator:abdbf0bd32da801c52993cadb7a49c9ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83132be2c4a6bf0453550bd1ae720006" id="r_a83132be2c4a6bf0453550bd1ae720006"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a> { <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a441cc344587709b2ff2fc26f36ff1e58">IMB_AUTH_HMAC_SHA_1</a> = 1
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ad0ad42ef3cb8cef38a29bcc667e70fca">IMB_AUTH_HMAC_SHA_224</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a60c1e71108516903aded4534f0f2e995">IMB_AUTH_HMAC_SHA_256</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ae98f8f8e42b7a026bb2aa2a402a291b9">IMB_AUTH_HMAC_SHA_384</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ad8f7bc68ad10fe75665692a27ada55f1">IMB_AUTH_HMAC_SHA_512</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a17deb61684701b7ec37f68bd34b6d454">IMB_AUTH_AES_XCBC</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a958fb278e4745955ebc791ba652954fe">IMB_AUTH_MD5</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a25f47297460775ab891a0abb8240b8e0">IMB_AUTH_NULL</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006aa1496e45f00afe54aeeb527089e14a0d">IMB_AUTH_AES_GMAC</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a70151af8840242c8f5bdb375f2f1135b">IMB_AUTH_CUSTOM</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a824187b143cb8d4b1778d10bcedbce3e">IMB_AUTH_AES_CCM</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006aed85279dbff19be59c16216364375a48">IMB_AUTH_AES_CMAC</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006adcaf4a43c9c114bcdb75ff44ba1bea77">IMB_AUTH_SHA_1</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a3936068075b4572d859c9b1984312325">IMB_AUTH_SHA_224</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a4962dbdf6fcb8d743e4ab55ce23c4b88">IMB_AUTH_SHA_256</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006afe74859581d19e70b8667773662081bc">IMB_AUTH_SHA_384</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006aa12aca10078adbe0bc2a021190663e2d">IMB_AUTH_SHA_512</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006aa9a94b55feed30ce57ecadf17b7c1a83">IMB_AUTH_AES_CMAC_BITLEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a2fcc080535b4dd16502ecd2b01c14048">IMB_AUTH_PON_CRC_BIP</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a188c2297dc5228820e690e8938cd407b">IMB_AUTH_ZUC_EIA3_BITLEN</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ae006c86697198ca852fc612d376135dc">IMB_AUTH_DOCSIS_CRC32</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a4eadf3270a81eb2567388843da2fa89b">IMB_AUTH_SNOW3G_UIA2_BITLEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a42dc1dc990059b61ef784813e0f8f49a">IMB_AUTH_KASUMI_UIA1</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a189af960a1558b7ac3289c0892739ea0">IMB_AUTH_AES_GMAC_128</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006adfd8db9df85ef929d9e4a38612f07d66">IMB_AUTH_AES_GMAC_192</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ae6fab01dbaf8b0110ca8ccdce98547af">IMB_AUTH_AES_GMAC_256</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a0d0cad9513b19110454c9e4e9c549205">IMB_AUTH_AES_CMAC_256</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a93e6c082f7ec5926a087d139a2bd2e56">IMB_AUTH_POLY1305</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ab737fa5ff7244ddf5024905f6477ae01">IMB_AUTH_CHACHA20_POLY1305</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a71119edfbe668d423e910b11c0efb712">IMB_AUTH_CHACHA20_POLY1305_SGL</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a7c535075abfb0878168a00600a762fe0">IMB_AUTH_ZUC256_EIA3_BITLEN</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a53ff331c62b01fb8427e63e18fc433f6">IMB_AUTH_SNOW_V_AEAD</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ada7d3fc165b6855ae3e83467de9916b2">IMB_AUTH_GCM_SGL</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a421294f9a35f87e796f96b48257e6dc2">IMB_AUTH_CRC32_ETHERNET_FCS</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a53ff8b335b5391fc33c80c076590de44">IMB_AUTH_CRC32_SCTP</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ad3936131d6804e6c6aa3bd497ae675ab">IMB_AUTH_CRC32_WIMAX_OFDMA_DATA</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a3a8aa07fe9f70ece22f9351db0f8bb31">IMB_AUTH_CRC24_LTE_A</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a77ccdf9abd97310f6808c8cf12c1a395">IMB_AUTH_CRC24_LTE_B</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a22e2e766cbec475508af01c6a722c2c3">IMB_AUTH_CRC16_X25</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006aa78e695260f8fe6bb56d242771624ccc">IMB_AUTH_CRC16_FP_DATA</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ab0f02ac14a03f137a83bb7d6dff539fc">IMB_AUTH_CRC11_FP_HEADER</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ac27de87b2687b1e2a293544be6d3fab9">IMB_AUTH_CRC10_IUUP_DATA</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ae62fe411b683840a5f25c199b66c7f42">IMB_AUTH_CRC8_WIMAX_OFDMA_HCS</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ab7f1372ade9da040caf195b13f2b79f0">IMB_AUTH_CRC7_FP_HEADER</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a88175070e077037332ad5cd5fdece46f">IMB_AUTH_CRC6_IUUP_HEADER</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a67297eacd4913bd65a1aae650c3a22e3">IMB_AUTH_GHASH</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006ae95ecde8c47c53b5b104fdd43120b450">IMB_AUTH_SM3</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006abba78b645883f63bb73c9a8cdd9f738b">IMB_AUTH_HMAC_SM3</a>
, <br />
&#160;&#160;<a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a907d7a31b1ce4650bd7dce7a43a9800f">IMB_AUTH_SM4_GCM</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006a5d34120f8a1c5cde857baf32536868af">IMB_AUTH_NUM</a>
<br />
 }</td></tr>
<tr class="separator:a83132be2c4a6bf0453550bd1ae720006"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a72299215a4838a93cdce6e5a37cfa5" id="r_a4a72299215a4838a93cdce6e5a37cfa5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4a72299215a4838a93cdce6e5a37cfa5">IMB_CHAIN_ORDER</a> { <a class="el" href="intel-ipsec-mb_8h.html#a4a72299215a4838a93cdce6e5a37cfa5a5e3ab845752ce3d16e40ea7802ce4a52">IMB_ORDER_CIPHER_HASH</a> = 1
, <a class="el" href="intel-ipsec-mb_8h.html#a4a72299215a4838a93cdce6e5a37cfa5a5de8d032616267941d99dad14801044d">IMB_ORDER_HASH_CIPHER</a>
 }</td></tr>
<tr class="separator:a4a72299215a4838a93cdce6e5a37cfa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a203fa854f71a1cca79f3f3ec251a33cc" id="r_a203fa854f71a1cca79f3f3ec251a33cc"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a> { <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33ccaa1eb9eb83fca5f5dd6578f27733eb390">IMB_KEY_64_BYTES</a> = 8
, <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33ccaf3e82db9a8b5b1b229c201735938969d">IMB_KEY_128_BYTES</a> = 16
, <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cca573d62aa6a04d9ce2b3c34e226846598">IMB_KEY_192_BYTES</a> = 24
, <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33ccac139e7555c9b30725359698833eb213a">IMB_KEY_256_BYTES</a> = 32
 }</td></tr>
<tr class="separator:a203fa854f71a1cca79f3f3ec251a33cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b93fe0c0d7cdc520e6b465ddd93ec3d" id="r_a6b93fe0c0d7cdc520e6b465ddd93ec3d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6b93fe0c0d7cdc520e6b465ddd93ec3d">IMB_SGL_STATE</a> { <a class="el" href="intel-ipsec-mb_8h.html#a6b93fe0c0d7cdc520e6b465ddd93ec3daf6e77a48759ab366cc1160725ff4261e">IMB_SGL_INIT</a> = 0
, <a class="el" href="intel-ipsec-mb_8h.html#a6b93fe0c0d7cdc520e6b465ddd93ec3da15c5d0aeeb9d5eb4e4c4878c837c5977">IMB_SGL_UPDATE</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a6b93fe0c0d7cdc520e6b465ddd93ec3dab7a602903c0fbaad7ffb893cb2547975">IMB_SGL_COMPLETE</a>
, <a class="el" href="intel-ipsec-mb_8h.html#a6b93fe0c0d7cdc520e6b465ddd93ec3da2f0678ab7ad9bb30c040e0b3ee2fa408">IMB_SGL_ALL</a>
 }</td></tr>
<tr class="separator:a6b93fe0c0d7cdc520e6b465ddd93ec3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a4490e7b324236315f1a9e141b39f99f2" id="r_a4490e7b324236315f1a9e141b39f99f2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4490e7b324236315f1a9e141b39f99f2">imb_get_version_str</a> (void)</td></tr>
<tr class="memdesc:a4490e7b324236315f1a9e141b39f99f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get library version in string format.  <br /></td></tr>
<tr class="separator:a4490e7b324236315f1a9e141b39f99f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee02bcb3a5e5eaee3632086f75c3d78d" id="r_aee02bcb3a5e5eaee3632086f75c3d78d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aee02bcb3a5e5eaee3632086f75c3d78d">imb_get_version</a> (void)</td></tr>
<tr class="memdesc:aee02bcb3a5e5eaee3632086f75c3d78d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get library version in numerical format.  <br /></td></tr>
<tr class="separator:aee02bcb3a5e5eaee3632086f75c3d78d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79f60b2bffbe91dac3e4f8b486e7ab10" id="r_a79f60b2bffbe91dac3e4f8b486e7ab10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a79f60b2bffbe91dac3e4f8b486e7ab10">imb_get_errno</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *mb_mgr)</td></tr>
<tr class="memdesc:a79f60b2bffbe91dac3e4f8b486e7ab10"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to get error status.  <br /></td></tr>
<tr class="separator:a79f60b2bffbe91dac3e4f8b486e7ab10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61f664448a862fbb02e728ce518ff8e4" id="r_a61f664448a862fbb02e728ce518ff8e4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a61f664448a862fbb02e728ce518ff8e4">imb_get_strerror</a> (int errnum)</td></tr>
<tr class="memdesc:a61f664448a862fbb02e728ce518ff8e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to get description for <em>errnum</em>.  <br /></td></tr>
<tr class="separator:a61f664448a862fbb02e728ce518ff8e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8dc617feb010b0f4cd74fd9e1eabb5e" id="r_ab8dc617feb010b0f4cd74fd9e1eabb5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e">alloc_mb_mgr</a> (uint64_t flags)</td></tr>
<tr class="memdesc:ab8dc617feb010b0f4cd74fd9e1eabb5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocates memory for multi-buffer manager instance.  <br /></td></tr>
<tr class="separator:ab8dc617feb010b0f4cd74fd9e1eabb5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a238b96cc36c0dc64798a1244b94add8b" id="r_a238b96cc36c0dc64798a1244b94add8b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a238b96cc36c0dc64798a1244b94add8b">free_mb_mgr</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *ptr)</td></tr>
<tr class="memdesc:a238b96cc36c0dc64798a1244b94add8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees memory allocated previously by <a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e" title="Allocates memory for multi-buffer manager instance.">alloc_mb_mgr()</a>  <br /></td></tr>
<tr class="separator:a238b96cc36c0dc64798a1244b94add8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8379ada0d6ec030ebad9828fbea9459" id="r_ac8379ada0d6ec030ebad9828fbea9459"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac8379ada0d6ec030ebad9828fbea9459">imb_get_mb_mgr_size</a> (void)</td></tr>
<tr class="memdesc:ac8379ada0d6ec030ebad9828fbea9459"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates necessary memory size for <a class="el" href="structIMB__MGR.html">IMB_MGR</a>.  <br /></td></tr>
<tr class="separator:ac8379ada0d6ec030ebad9828fbea9459"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a825e903d1f8f8611b98b60fcaa5a81" id="r_a3a825e903d1f8f8611b98b60fcaa5a81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3a825e903d1f8f8611b98b60fcaa5a81">imb_set_pointers_mb_mgr</a> (void *ptr, const uint64_t flags, const unsigned reset_mgr)</td></tr>
<tr class="memdesc:a3a825e903d1f8f8611b98b60fcaa5a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes <a class="el" href="structIMB__MGR.html">IMB_MGR</a> pointers to out-of-order managers with use of externally allocated memory.  <br /></td></tr>
<tr class="separator:a3a825e903d1f8f8611b98b60fcaa5a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a725703ff6da6b402bde7041a2fabfddf" id="r_a725703ff6da6b402bde7041a2fabfddf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a725703ff6da6b402bde7041a2fabfddf">imb_get_feature_flags</a> (void)</td></tr>
<tr class="memdesc:a725703ff6da6b402bde7041a2fabfddf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the bitmask with the features supported by the library, without having to allocate/initialize <a class="el" href="structIMB__MGR.html">IMB_MGR</a>;.  <br /></td></tr>
<tr class="separator:a725703ff6da6b402bde7041a2fabfddf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71b6563b6b4c0c504cd9b8302a242cfa" id="r_a71b6563b6b4c0c504cd9b8302a242cfa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a71b6563b6b4c0c504cd9b8302a242cfa">init_mb_mgr_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a71b6563b6b4c0c504cd9b8302a242cfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Multi-Buffer Manager structure.  <br /></td></tr>
<tr class="separator:a71b6563b6b4c0c504cd9b8302a242cfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98932a3c61d798b0c8a560dcc3dce16f" id="r_a98932a3c61d798b0c8a560dcc3dce16f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a98932a3c61d798b0c8a560dcc3dce16f">init_mb_mgr_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a98932a3c61d798b0c8a560dcc3dce16f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Multi-Buffer Manager structure.    <br /></td></tr>
<tr class="separator:a98932a3c61d798b0c8a560dcc3dce16f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ad1941fe5d77b8bb2d6445679e3b0c5" id="r_a2ad1941fe5d77b8bb2d6445679e3b0c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2ad1941fe5d77b8bb2d6445679e3b0c5">init_mb_mgr_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a2ad1941fe5d77b8bb2d6445679e3b0c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Multi-Buffer Manager structure.    <br /></td></tr>
<tr class="separator:a2ad1941fe5d77b8bb2d6445679e3b0c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8913995859e45005f8de57a3456c93cf" id="r_a8913995859e45005f8de57a3456c93cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8913995859e45005f8de57a3456c93cf">submit_job_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a8913995859e45005f8de57a3456c93cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing after validating.  <br /></td></tr>
<tr class="separator:a8913995859e45005f8de57a3456c93cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75cc0d090470e47cd8be04451ee31a68" id="r_a75cc0d090470e47cd8be04451ee31a68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a75cc0d090470e47cd8be04451ee31a68">submit_job_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a75cc0d090470e47cd8be04451ee31a68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing after validating.    <br /></td></tr>
<tr class="separator:a75cc0d090470e47cd8be04451ee31a68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7700e90058a74980bfd7d462a19d32a0" id="r_a7700e90058a74980bfd7d462a19d32a0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7700e90058a74980bfd7d462a19d32a0">submit_job_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a7700e90058a74980bfd7d462a19d32a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing after validating.    <br /></td></tr>
<tr class="separator:a7700e90058a74980bfd7d462a19d32a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72caaf8162ae6f802f7c1fe570afe42e" id="r_a72caaf8162ae6f802f7c1fe570afe42e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a72caaf8162ae6f802f7c1fe570afe42e">submit_job_nocheck_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a72caaf8162ae6f802f7c1fe570afe42e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing without validating.  <br /></td></tr>
<tr class="separator:a72caaf8162ae6f802f7c1fe570afe42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a95b9268508d68b9027df98167d22cd" id="r_a5a95b9268508d68b9027df98167d22cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5a95b9268508d68b9027df98167d22cd">submit_job_nocheck_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a5a95b9268508d68b9027df98167d22cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing without validating.    <br /></td></tr>
<tr class="separator:a5a95b9268508d68b9027df98167d22cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35e4c8a3d2eba8a612f021572621f98e" id="r_a35e4c8a3d2eba8a612f021572621f98e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a35e4c8a3d2eba8a612f021572621f98e">submit_job_nocheck_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a35e4c8a3d2eba8a612f021572621f98e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Submit job for processing without validating.    <br /></td></tr>
<tr class="separator:a35e4c8a3d2eba8a612f021572621f98e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae242d142065172898129f30e6bc40d8c" id="r_ae242d142065172898129f30e6bc40d8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae242d142065172898129f30e6bc40d8c">flush_job_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:ae242d142065172898129f30e6bc40d8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force processing until next job in queue is completed.  <br /></td></tr>
<tr class="separator:ae242d142065172898129f30e6bc40d8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7aec54f653aeee2554ba980d62fd491" id="r_ac7aec54f653aeee2554ba980d62fd491"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac7aec54f653aeee2554ba980d62fd491">flush_job_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:ac7aec54f653aeee2554ba980d62fd491"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force processing until next job in queue is completed.    <br /></td></tr>
<tr class="separator:ac7aec54f653aeee2554ba980d62fd491"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96b880b8a32b0466f880d4f22d95cc3b" id="r_a96b880b8a32b0466f880d4f22d95cc3b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a96b880b8a32b0466f880d4f22d95cc3b">flush_job_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a96b880b8a32b0466f880d4f22d95cc3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force processing until next job in queue is completed.    <br /></td></tr>
<tr class="separator:a96b880b8a32b0466f880d4f22d95cc3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a540000c08366ad47d95e23ed5b2918" id="r_a8a540000c08366ad47d95e23ed5b2918"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8a540000c08366ad47d95e23ed5b2918">queue_size_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a8a540000c08366ad47d95e23ed5b2918"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of jobs queued to be processed.  <br /></td></tr>
<tr class="separator:a8a540000c08366ad47d95e23ed5b2918"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51c0426a4b57c9e7db2b091692dff472" id="r_a51c0426a4b57c9e7db2b091692dff472"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a51c0426a4b57c9e7db2b091692dff472">queue_size_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a51c0426a4b57c9e7db2b091692dff472"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of jobs queued to be processed.    <br /></td></tr>
<tr class="separator:a51c0426a4b57c9e7db2b091692dff472"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80f792744558de173ea97d722c58e5c1" id="r_a80f792744558de173ea97d722c58e5c1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a80f792744558de173ea97d722c58e5c1">queue_size_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a80f792744558de173ea97d722c58e5c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of jobs queued to be processed.    <br /></td></tr>
<tr class="separator:a80f792744558de173ea97d722c58e5c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad85bdbf56038fd72ceda7e50deea586e" id="r_ad85bdbf56038fd72ceda7e50deea586e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad85bdbf56038fd72ceda7e50deea586e">get_completed_job_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:ad85bdbf56038fd72ceda7e50deea586e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next completed job.  <br /></td></tr>
<tr class="separator:ad85bdbf56038fd72ceda7e50deea586e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a693afd528fcc0809cc667b6c38de84dc" id="r_a693afd528fcc0809cc667b6c38de84dc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a693afd528fcc0809cc667b6c38de84dc">get_completed_job_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a693afd528fcc0809cc667b6c38de84dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next completed job.    <br /></td></tr>
<tr class="separator:a693afd528fcc0809cc667b6c38de84dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a267a718472e0c1b6585402e81e44e7e9" id="r_a267a718472e0c1b6585402e81e44e7e9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a267a718472e0c1b6585402e81e44e7e9">get_completed_job_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a267a718472e0c1b6585402e81e44e7e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next completed job.    <br /></td></tr>
<tr class="separator:a267a718472e0c1b6585402e81e44e7e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49a3d54979188b3c68bdd621043125f7" id="r_a49a3d54979188b3c68bdd621043125f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a49a3d54979188b3c68bdd621043125f7">get_next_job_avx2</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a49a3d54979188b3c68bdd621043125f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next available job.  <br /></td></tr>
<tr class="separator:a49a3d54979188b3c68bdd621043125f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40c08ba2c387e24f2096b1213c46c812" id="r_a40c08ba2c387e24f2096b1213c46c812"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a40c08ba2c387e24f2096b1213c46c812">get_next_job_avx512</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a40c08ba2c387e24f2096b1213c46c812"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next available job.    <br /></td></tr>
<tr class="separator:a40c08ba2c387e24f2096b1213c46c812"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a055db1f6f16bc17724bdc64d0f313871" id="r_a055db1f6f16bc17724bdc64d0f313871"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a055db1f6f16bc17724bdc64d0f313871">get_next_job_sse</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state)</td></tr>
<tr class="memdesc:a055db1f6f16bc17724bdc64d0f313871"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next available job.    <br /></td></tr>
<tr class="separator:a055db1f6f16bc17724bdc64d0f313871"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cbbd032835837fd0aa83b04f5337638" id="r_a2cbbd032835837fd0aa83b04f5337638"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2cbbd032835837fd0aa83b04f5337638">init_mb_mgr_auto</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, <a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6">IMB_ARCH</a> *arch)</td></tr>
<tr class="memdesc:a2cbbd032835837fd0aa83b04f5337638"><td class="mdescLeft">&#160;</td><td class="mdescRight">Automatically initialize most performant Multi-buffer manager based on CPU features.  <br /></td></tr>
<tr class="separator:a2cbbd032835837fd0aa83b04f5337638"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6979ebea3cfa1a20874aa8830baf0b22" id="r_a6979ebea3cfa1a20874aa8830baf0b22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6979ebea3cfa1a20874aa8830baf0b22">imb_sm4_gcm_pre</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *mb_mgr, const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="separator:a6979ebea3cfa1a20874aa8830baf0b22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9911462fe4689c7420b827bb13fc3440" id="r_a9911462fe4689c7420b827bb13fc3440"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9911462fe4689c7420b827bb13fc3440">des_key_schedule</a> (uint64_t *ks, const void *key)</td></tr>
<tr class="memdesc:a9911462fe4689c7420b827bb13fc3440"><td class="mdescLeft">&#160;</td><td class="mdescRight">DES key schedule set up.  <br /></td></tr>
<tr class="separator:a9911462fe4689c7420b827bb13fc3440"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c94d3ccb379f131a14d8eba3715e368" id="r_a3c94d3ccb379f131a14d8eba3715e368"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3c94d3ccb379f131a14d8eba3715e368">imb_hmac_ipad_opad</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *mb_mgr, const <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a> sha_type, const void *pkey, const size_t key_len, void *ipad_hash, void *opad_hash)</td></tr>
<tr class="memdesc:a3c94d3ccb379f131a14d8eba3715e368"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ipad Opad padding for HMAC.  <br /></td></tr>
<tr class="separator:a3c94d3ccb379f131a14d8eba3715e368"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71a0353411f5307a2177ae9b2814f522" id="r_a71a0353411f5307a2177ae9b2814f522"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a71a0353411f5307a2177ae9b2814f522">des_cfb_one</a> (void *out, const void *in, const uint64_t *iv, const uint64_t *ks, const int len)</td></tr>
<tr class="memdesc:a71a0353411f5307a2177ae9b2814f522"><td class="mdescLeft">&#160;</td><td class="mdescRight">DES-CFB Encrypt/Decrypt up to one block.  <br /></td></tr>
<tr class="separator:a71a0353411f5307a2177ae9b2814f522"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d883a3a629240fe86efedd180294433" id="r_a9d883a3a629240fe86efedd180294433"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9d883a3a629240fe86efedd180294433">md5_one_block_sse</a> (const void *data, void *digest)</td></tr>
<tr class="separator:a9d883a3a629240fe86efedd180294433"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b912812c65f4d3b592875cdd233704d" id="r_a8b912812c65f4d3b592875cdd233704d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8b912812c65f4d3b592875cdd233704d">md5_one_block_avx2</a> (const void *data, void *digest)</td></tr>
<tr class="separator:a8b912812c65f4d3b592875cdd233704d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7f4da2fc0601ad50851e7e43f53e0cf" id="r_ac7f4da2fc0601ad50851e7e43f53e0cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac7f4da2fc0601ad50851e7e43f53e0cf">md5_one_block_avx512</a> (const void *data, void *digest)</td></tr>
<tr class="separator:ac7f4da2fc0601ad50851e7e43f53e0cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32bcda3484b33b7d01124dbfeb9a229b" id="r_a32bcda3484b33b7d01124dbfeb9a229b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a32bcda3484b33b7d01124dbfeb9a229b">aes_keyexp_128_sse</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a32bcda3484b33b7d01124dbfeb9a229b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec7fe23c32ee94de88e5feba8f373a04" id="r_aec7fe23c32ee94de88e5feba8f373a04"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aec7fe23c32ee94de88e5feba8f373a04">aes_keyexp_128_avx</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:aec7fe23c32ee94de88e5feba8f373a04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fc7f88bdb263ae0d45f37af7e4cb930" id="r_a4fc7f88bdb263ae0d45f37af7e4cb930"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4fc7f88bdb263ae0d45f37af7e4cb930">aes_keyexp_128_avx2</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a4fc7f88bdb263ae0d45f37af7e4cb930"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b7faaf3e5235d0a3c4b784f1035896d" id="r_a9b7faaf3e5235d0a3c4b784f1035896d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9b7faaf3e5235d0a3c4b784f1035896d">aes_keyexp_128_avx512</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a9b7faaf3e5235d0a3c4b784f1035896d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7681d777bb5f991ab59b5581bc854562" id="r_a7681d777bb5f991ab59b5581bc854562"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7681d777bb5f991ab59b5581bc854562">aes_keyexp_192_sse</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a7681d777bb5f991ab59b5581bc854562"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bc56101b48217094086ae3120b0e086" id="r_a3bc56101b48217094086ae3120b0e086"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3bc56101b48217094086ae3120b0e086">aes_keyexp_192_avx</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a3bc56101b48217094086ae3120b0e086"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba6dd2e633819829740cb7917ba6b1b2" id="r_aba6dd2e633819829740cb7917ba6b1b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aba6dd2e633819829740cb7917ba6b1b2">aes_keyexp_192_avx2</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:aba6dd2e633819829740cb7917ba6b1b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f69c0a43de83f8fba19107a63c07831" id="r_a1f69c0a43de83f8fba19107a63c07831"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1f69c0a43de83f8fba19107a63c07831">aes_keyexp_192_avx512</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a1f69c0a43de83f8fba19107a63c07831"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5105a8d995cd8e4354c7de7ac94886cb" id="r_a5105a8d995cd8e4354c7de7ac94886cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5105a8d995cd8e4354c7de7ac94886cb">aes_keyexp_256_sse</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a5105a8d995cd8e4354c7de7ac94886cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b92ee3873b2e2cd02c9312b6040ee91" id="r_a5b92ee3873b2e2cd02c9312b6040ee91"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5b92ee3873b2e2cd02c9312b6040ee91">aes_keyexp_256_avx</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a5b92ee3873b2e2cd02c9312b6040ee91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1f440855a00edbf95c124a1e1d18c37" id="r_af1f440855a00edbf95c124a1e1d18c37"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af1f440855a00edbf95c124a1e1d18c37">aes_keyexp_256_avx2</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:af1f440855a00edbf95c124a1e1d18c37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37e0f61656618413fcfd919dfe79ca45" id="r_a37e0f61656618413fcfd919dfe79ca45"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a37e0f61656618413fcfd919dfe79ca45">aes_keyexp_256_avx512</a> (const void *key, void *enc_exp_keys, void *dec_exp_keys)</td></tr>
<tr class="separator:a37e0f61656618413fcfd919dfe79ca45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a270621a2f73134d8d021b5dd57ad6817" id="r_a270621a2f73134d8d021b5dd57ad6817"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a270621a2f73134d8d021b5dd57ad6817">aes_keyexp_128_enc_sse</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a270621a2f73134d8d021b5dd57ad6817"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7d7c889a25730d82ddee27bad7f0a63" id="r_ac7d7c889a25730d82ddee27bad7f0a63"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac7d7c889a25730d82ddee27bad7f0a63">aes_keyexp_128_enc_avx</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:ac7d7c889a25730d82ddee27bad7f0a63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84e76bdfb5a69dba7b515dd0b4fb4312" id="r_a84e76bdfb5a69dba7b515dd0b4fb4312"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a84e76bdfb5a69dba7b515dd0b4fb4312">aes_keyexp_128_enc_avx2</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a84e76bdfb5a69dba7b515dd0b4fb4312"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68e6a0e99a2091d3630bf3315fe9d95c" id="r_a68e6a0e99a2091d3630bf3315fe9d95c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a68e6a0e99a2091d3630bf3315fe9d95c">aes_keyexp_128_enc_avx512</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a68e6a0e99a2091d3630bf3315fe9d95c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a843e722f2af7a645340f6a98cfa4c2" id="r_a0a843e722f2af7a645340f6a98cfa4c2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0a843e722f2af7a645340f6a98cfa4c2">aes_keyexp_192_enc_sse</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a0a843e722f2af7a645340f6a98cfa4c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5350b81ab574c990d6a5b9dc3b203c51" id="r_a5350b81ab574c990d6a5b9dc3b203c51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5350b81ab574c990d6a5b9dc3b203c51">aes_keyexp_192_enc_avx</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a5350b81ab574c990d6a5b9dc3b203c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a460853c072adc3a0f431e861d3e5bba1" id="r_a460853c072adc3a0f431e861d3e5bba1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a460853c072adc3a0f431e861d3e5bba1">aes_keyexp_192_enc_avx2</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a460853c072adc3a0f431e861d3e5bba1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72807e8300208b22b5d532e274385127" id="r_a72807e8300208b22b5d532e274385127"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a72807e8300208b22b5d532e274385127">aes_keyexp_192_enc_avx512</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a72807e8300208b22b5d532e274385127"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa369dee8def2ef620e7f33db86a3356" id="r_afa369dee8def2ef620e7f33db86a3356"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afa369dee8def2ef620e7f33db86a3356">aes_keyexp_256_enc_sse</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:afa369dee8def2ef620e7f33db86a3356"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22096fdd9b5d32095571f04a838d66a9" id="r_a22096fdd9b5d32095571f04a838d66a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a22096fdd9b5d32095571f04a838d66a9">aes_keyexp_256_enc_avx</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a22096fdd9b5d32095571f04a838d66a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73da5625112ad845a3ec94ee84590f54" id="r_a73da5625112ad845a3ec94ee84590f54"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a73da5625112ad845a3ec94ee84590f54">aes_keyexp_256_enc_avx2</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a73da5625112ad845a3ec94ee84590f54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fb47323b270bffc87ad8e77985e827d" id="r_a9fb47323b270bffc87ad8e77985e827d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9fb47323b270bffc87ad8e77985e827d">aes_keyexp_256_enc_avx512</a> (const void *key, void *enc_exp_keys)</td></tr>
<tr class="separator:a9fb47323b270bffc87ad8e77985e827d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefb28e46620cbf65a2af3073b2401e40" id="r_aefb28e46620cbf65a2af3073b2401e40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aefb28e46620cbf65a2af3073b2401e40">aes_xcbc_expand_key_sse</a> (const void *key, void *k1_exp, void *k2, void *k3)</td></tr>
<tr class="separator:aefb28e46620cbf65a2af3073b2401e40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe460e4ff6a7b0c7a6edcc87e9976121" id="r_afe460e4ff6a7b0c7a6edcc87e9976121"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afe460e4ff6a7b0c7a6edcc87e9976121">aes_xcbc_expand_key_avx</a> (const void *key, void *k1_exp, void *k2, void *k3)</td></tr>
<tr class="separator:afe460e4ff6a7b0c7a6edcc87e9976121"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3f27672ce30d74f5cdc28f1903f68b1" id="r_ac3f27672ce30d74f5cdc28f1903f68b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac3f27672ce30d74f5cdc28f1903f68b1">aes_xcbc_expand_key_avx2</a> (const void *key, void *k1_exp, void *k2, void *k3)</td></tr>
<tr class="separator:ac3f27672ce30d74f5cdc28f1903f68b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1308be648182642b8d73ff27d9344564" id="r_a1308be648182642b8d73ff27d9344564"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a1308be648182642b8d73ff27d9344564">aes_xcbc_expand_key_avx512</a> (const void *key, void *k1_exp, void *k2, void *k3)</td></tr>
<tr class="separator:a1308be648182642b8d73ff27d9344564"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dafe82f4933670f68e1bf34d55a691d" id="r_a4dafe82f4933670f68e1bf34d55a691d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4dafe82f4933670f68e1bf34d55a691d">aes_cmac_subkey_gen_sse</a> (const void *key_exp, void *key1, void *key2)</td></tr>
<tr class="separator:a4dafe82f4933670f68e1bf34d55a691d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6541825066a8d2b8b3c7b6e2c4b28c83" id="r_a6541825066a8d2b8b3c7b6e2c4b28c83"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6541825066a8d2b8b3c7b6e2c4b28c83">aes_cmac_subkey_gen_avx</a> (const void *key_exp, void *key1, void *key2)</td></tr>
<tr class="separator:a6541825066a8d2b8b3c7b6e2c4b28c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6903e1e0dfb8fd75c2f556596f3efa1b" id="r_a6903e1e0dfb8fd75c2f556596f3efa1b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6903e1e0dfb8fd75c2f556596f3efa1b">aes_cmac_subkey_gen_avx2</a> (const void *key_exp, void *key1, void *key2)</td></tr>
<tr class="separator:a6903e1e0dfb8fd75c2f556596f3efa1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a730f18bd7cdcbbb995e24931307867fc" id="r_a730f18bd7cdcbbb995e24931307867fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a730f18bd7cdcbbb995e24931307867fc">aes_cmac_subkey_gen_avx512</a> (const void *key_exp, void *key1, void *key2)</td></tr>
<tr class="separator:a730f18bd7cdcbbb995e24931307867fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad9e6c466a5274b974d20330f91add50" id="r_aad9e6c466a5274b974d20330f91add50"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aad9e6c466a5274b974d20330f91add50">aes_gcm_enc_128_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:aad9e6c466a5274b974d20330f91add50"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-128 Encryption.  <br /></td></tr>
<tr class="separator:aad9e6c466a5274b974d20330f91add50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa17c919e873b6cfd7ac990977eef7601" id="r_aa17c919e873b6cfd7ac990977eef7601"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aa17c919e873b6cfd7ac990977eef7601">aes_gcm_enc_128_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:aa17c919e873b6cfd7ac990977eef7601"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-128 Encryption.    <br /></td></tr>
<tr class="separator:aa17c919e873b6cfd7ac990977eef7601"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adec2f9778622b3e226f12bb326e75076" id="r_adec2f9778622b3e226f12bb326e75076"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adec2f9778622b3e226f12bb326e75076">aes_gcm_enc_192_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:adec2f9778622b3e226f12bb326e75076"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-192 Encryption.  <br /></td></tr>
<tr class="separator:adec2f9778622b3e226f12bb326e75076"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b462a3c00471e4338f0bae7d5abbda7" id="r_a9b462a3c00471e4338f0bae7d5abbda7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a9b462a3c00471e4338f0bae7d5abbda7">aes_gcm_enc_192_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a9b462a3c00471e4338f0bae7d5abbda7"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-192 Encryption.    <br /></td></tr>
<tr class="separator:a9b462a3c00471e4338f0bae7d5abbda7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a460ad1ebcb7df39e39c9aca214d8109c" id="r_a460ad1ebcb7df39e39c9aca214d8109c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a460ad1ebcb7df39e39c9aca214d8109c">aes_gcm_enc_256_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a460ad1ebcb7df39e39c9aca214d8109c"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-256 Encryption.  <br /></td></tr>
<tr class="separator:a460ad1ebcb7df39e39c9aca214d8109c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52c0913f10dd41fea5fe328037561ff8" id="r_a52c0913f10dd41fea5fe328037561ff8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a52c0913f10dd41fea5fe328037561ff8">aes_gcm_enc_256_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a52c0913f10dd41fea5fe328037561ff8"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-256 Encryption.    <br /></td></tr>
<tr class="separator:a52c0913f10dd41fea5fe328037561ff8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add2f5aafaf55cd0e0b20b2b62fcb025d" id="r_add2f5aafaf55cd0e0b20b2b62fcb025d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#add2f5aafaf55cd0e0b20b2b62fcb025d">aes_gcm_dec_128_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:add2f5aafaf55cd0e0b20b2b62fcb025d"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-128 Decryption.  <br /></td></tr>
<tr class="separator:add2f5aafaf55cd0e0b20b2b62fcb025d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1e8e1b4425af520048a9e1fe5689e4d" id="r_ae1e8e1b4425af520048a9e1fe5689e4d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae1e8e1b4425af520048a9e1fe5689e4d">aes_gcm_dec_128_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:ae1e8e1b4425af520048a9e1fe5689e4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-128 Decryption.    <br /></td></tr>
<tr class="separator:ae1e8e1b4425af520048a9e1fe5689e4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaff83c8ca568201805e0ada5a79f6e1" id="r_acaff83c8ca568201805e0ada5a79f6e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#acaff83c8ca568201805e0ada5a79f6e1">aes_gcm_dec_192_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:acaff83c8ca568201805e0ada5a79f6e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-192 Decryption.  <br /></td></tr>
<tr class="separator:acaff83c8ca568201805e0ada5a79f6e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ccd87fbcfffc238fbcd1fc816eb06ee" id="r_a5ccd87fbcfffc238fbcd1fc816eb06ee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5ccd87fbcfffc238fbcd1fc816eb06ee">aes_gcm_dec_192_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a5ccd87fbcfffc238fbcd1fc816eb06ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-192 Decryption.    <br /></td></tr>
<tr class="separator:a5ccd87fbcfffc238fbcd1fc816eb06ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd8763c66749e9bc5e4e5eb2ac130e43" id="r_afd8763c66749e9bc5e4e5eb2ac130e43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afd8763c66749e9bc5e4e5eb2ac130e43">aes_gcm_dec_256_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:afd8763c66749e9bc5e4e5eb2ac130e43"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-256 Decryption.  <br /></td></tr>
<tr class="separator:afd8763c66749e9bc5e4e5eb2ac130e43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac16384799933d4f7b11cb56d9c66f5da" id="r_ac16384799933d4f7b11cb56d9c66f5da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac16384799933d4f7b11cb56d9c66f5da">aes_gcm_dec_256_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, uint8_t const *in, uint64_t len, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:ac16384799933d4f7b11cb56d9c66f5da"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES-GCM-256 Decryption.    <br /></td></tr>
<tr class="separator:ac16384799933d4f7b11cb56d9c66f5da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca7ab49c370f8f7cb82f93db199bfd1c" id="r_aca7ab49c370f8f7cb82f93db199bfd1c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aca7ab49c370f8f7cb82f93db199bfd1c">aes_gcm_init_128_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len)</td></tr>
<tr class="memdesc:aca7ab49c370f8f7cb82f93db199bfd1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-128 Encryption.  <br /></td></tr>
<tr class="separator:aca7ab49c370f8f7cb82f93db199bfd1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d225d08a5cf144208dacb155e192cb6" id="r_a8d225d08a5cf144208dacb155e192cb6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8d225d08a5cf144208dacb155e192cb6">aes_gcm_init_128_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len)</td></tr>
<tr class="memdesc:a8d225d08a5cf144208dacb155e192cb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-128 Encryption.    <br /></td></tr>
<tr class="separator:a8d225d08a5cf144208dacb155e192cb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bbf84135701f572ec2ecb0c0898848b" id="r_a5bbf84135701f572ec2ecb0c0898848b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5bbf84135701f572ec2ecb0c0898848b">aes_gcm_init_192_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len)</td></tr>
<tr class="memdesc:a5bbf84135701f572ec2ecb0c0898848b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-192 Encryption.  <br /></td></tr>
<tr class="separator:a5bbf84135701f572ec2ecb0c0898848b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a757cd199a2e993c6610bbcdfc1da1ae4" id="r_a757cd199a2e993c6610bbcdfc1da1ae4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a757cd199a2e993c6610bbcdfc1da1ae4">aes_gcm_init_192_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len)</td></tr>
<tr class="memdesc:a757cd199a2e993c6610bbcdfc1da1ae4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-192 Encryption.    <br /></td></tr>
<tr class="separator:a757cd199a2e993c6610bbcdfc1da1ae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09949bd5112eec14773dce239ca39033" id="r_a09949bd5112eec14773dce239ca39033"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a09949bd5112eec14773dce239ca39033">aes_gcm_init_256_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len)</td></tr>
<tr class="memdesc:a09949bd5112eec14773dce239ca39033"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-256 Encryption.  <br /></td></tr>
<tr class="separator:a09949bd5112eec14773dce239ca39033"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99310b73bc9cde6b69b682e72cd0efc1" id="r_a99310b73bc9cde6b69b682e72cd0efc1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a99310b73bc9cde6b69b682e72cd0efc1">aes_gcm_init_256_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, const uint8_t *iv, uint8_t const *aad, uint64_t aad_len)</td></tr>
<tr class="memdesc:a99310b73bc9cde6b69b682e72cd0efc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-256 Encryption.    <br /></td></tr>
<tr class="separator:a99310b73bc9cde6b69b682e72cd0efc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b12cabbfebb420022a19124aff78a3f" id="r_a7b12cabbfebb420022a19124aff78a3f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a7b12cabbfebb420022a19124aff78a3f">aes_gcm_enc_128_update_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a7b12cabbfebb420022a19124aff78a3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt a block of a AES-GCM-128 encryption message.  <br /></td></tr>
<tr class="separator:a7b12cabbfebb420022a19124aff78a3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb5570a161a90391e25b2016bc98381b" id="r_abb5570a161a90391e25b2016bc98381b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abb5570a161a90391e25b2016bc98381b">aes_gcm_enc_128_update_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:abb5570a161a90391e25b2016bc98381b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt a block of a AES-GCM-128 encryption message.    <br /></td></tr>
<tr class="separator:abb5570a161a90391e25b2016bc98381b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46c3df131f9e1e3ed1a283349c4072f7" id="r_a46c3df131f9e1e3ed1a283349c4072f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a46c3df131f9e1e3ed1a283349c4072f7">aes_gcm_enc_192_update_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a46c3df131f9e1e3ed1a283349c4072f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt a block of a AES-GCM-192 encryption message.  <br /></td></tr>
<tr class="separator:a46c3df131f9e1e3ed1a283349c4072f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a174447b05661285b2729805f66bcef81" id="r_a174447b05661285b2729805f66bcef81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a174447b05661285b2729805f66bcef81">aes_gcm_enc_192_update_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a174447b05661285b2729805f66bcef81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt a block of a AES-GCM-192 encryption message.    <br /></td></tr>
<tr class="separator:a174447b05661285b2729805f66bcef81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab831bdb2193a5adc54b51285f23ad5ce" id="r_ab831bdb2193a5adc54b51285f23ad5ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab831bdb2193a5adc54b51285f23ad5ce">aes_gcm_enc_256_update_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:ab831bdb2193a5adc54b51285f23ad5ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt a block of a AES-GCM-256 encryption message.  <br /></td></tr>
<tr class="separator:ab831bdb2193a5adc54b51285f23ad5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9592051cf26814ea5830826b553c547" id="r_ad9592051cf26814ea5830826b553c547"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ad9592051cf26814ea5830826b553c547">aes_gcm_enc_256_update_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:ad9592051cf26814ea5830826b553c547"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt a block of a AES-GCM-256 encryption message.    <br /></td></tr>
<tr class="separator:ad9592051cf26814ea5830826b553c547"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2216e461e916668b70d547513b0cf26f" id="r_a2216e461e916668b70d547513b0cf26f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2216e461e916668b70d547513b0cf26f">aes_gcm_dec_128_update_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a2216e461e916668b70d547513b0cf26f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt a block of a AES-GCM-128 encryption message.  <br /></td></tr>
<tr class="separator:a2216e461e916668b70d547513b0cf26f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4464684ff4cf4e9cb978409ad350c4d6" id="r_a4464684ff4cf4e9cb978409ad350c4d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4464684ff4cf4e9cb978409ad350c4d6">aes_gcm_dec_128_update_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a4464684ff4cf4e9cb978409ad350c4d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt a block of a AES-GCM-128 encryption message.    <br /></td></tr>
<tr class="separator:a4464684ff4cf4e9cb978409ad350c4d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58455aec5650ecfc6077c69c97031f63" id="r_a58455aec5650ecfc6077c69c97031f63"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a58455aec5650ecfc6077c69c97031f63">aes_gcm_dec_192_update_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a58455aec5650ecfc6077c69c97031f63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt a block of a AES-GCM-192 encryption message.  <br /></td></tr>
<tr class="separator:a58455aec5650ecfc6077c69c97031f63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a615c26f03ba08c8cde73cb074bf6b363" id="r_a615c26f03ba08c8cde73cb074bf6b363"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a615c26f03ba08c8cde73cb074bf6b363">aes_gcm_dec_192_update_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a615c26f03ba08c8cde73cb074bf6b363"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt a block of a AES-GCM-192 encryption message.    <br /></td></tr>
<tr class="separator:a615c26f03ba08c8cde73cb074bf6b363"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1a51ae4b3cf3e8fdb618773d7b24b68" id="r_ab1a51ae4b3cf3e8fdb618773d7b24b68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab1a51ae4b3cf3e8fdb618773d7b24b68">aes_gcm_dec_256_update_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:ab1a51ae4b3cf3e8fdb618773d7b24b68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt a block of a AES-GCM-256 encryption message.  <br /></td></tr>
<tr class="separator:ab1a51ae4b3cf3e8fdb618773d7b24b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a141303c38f4eed1245b542b6e9473296" id="r_a141303c38f4eed1245b542b6e9473296"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a141303c38f4eed1245b542b6e9473296">aes_gcm_dec_256_update_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *out, const uint8_t *in, uint64_t len)</td></tr>
<tr class="memdesc:a141303c38f4eed1245b542b6e9473296"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt a block of a AES-GCM-256 encryption message.    <br /></td></tr>
<tr class="separator:a141303c38f4eed1245b542b6e9473296"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af63ae2246c6d89b7d6630623948d3886" id="r_af63ae2246c6d89b7d6630623948d3886"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#af63ae2246c6d89b7d6630623948d3886">aes_gcm_enc_128_finalize_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:af63ae2246c6d89b7d6630623948d3886"><td class="mdescLeft">&#160;</td><td class="mdescRight">End encryption of a AES-GCM-128 encryption message.  <br /></td></tr>
<tr class="separator:af63ae2246c6d89b7d6630623948d3886"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a004c38b922d25d8631252854426ebf44" id="r_a004c38b922d25d8631252854426ebf44"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a004c38b922d25d8631252854426ebf44">aes_gcm_enc_128_finalize_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a004c38b922d25d8631252854426ebf44"><td class="mdescLeft">&#160;</td><td class="mdescRight">End encryption of a AES-GCM-128 encryption message.    <br /></td></tr>
<tr class="separator:a004c38b922d25d8631252854426ebf44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5dcb5c37d1a5377967888e9b76208f8c" id="r_a5dcb5c37d1a5377967888e9b76208f8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5dcb5c37d1a5377967888e9b76208f8c">aes_gcm_enc_192_finalize_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a5dcb5c37d1a5377967888e9b76208f8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">End encryption of a AES-GCM-192 encryption message.  <br /></td></tr>
<tr class="separator:a5dcb5c37d1a5377967888e9b76208f8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f76beaee47ffeeeb6f94a132f898339" id="r_a4f76beaee47ffeeeb6f94a132f898339"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4f76beaee47ffeeeb6f94a132f898339">aes_gcm_enc_192_finalize_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a4f76beaee47ffeeeb6f94a132f898339"><td class="mdescLeft">&#160;</td><td class="mdescRight">End encryption of a AES-GCM-192 encryption message.    <br /></td></tr>
<tr class="separator:a4f76beaee47ffeeeb6f94a132f898339"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcdedeabc7516e7506fa5c81d07f6fd8" id="r_afcdedeabc7516e7506fa5c81d07f6fd8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afcdedeabc7516e7506fa5c81d07f6fd8">aes_gcm_enc_256_finalize_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:afcdedeabc7516e7506fa5c81d07f6fd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">End encryption of a AES-GCM-256 encryption message.  <br /></td></tr>
<tr class="separator:afcdedeabc7516e7506fa5c81d07f6fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a873a75e2175acd3741b5cfc41180fe2c" id="r_a873a75e2175acd3741b5cfc41180fe2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a873a75e2175acd3741b5cfc41180fe2c">aes_gcm_enc_256_finalize_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a873a75e2175acd3741b5cfc41180fe2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">End encryption of a AES-GCM-256 encryption message.    <br /></td></tr>
<tr class="separator:a873a75e2175acd3741b5cfc41180fe2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08603861ac18d1dce7b322b0c3fb69c5" id="r_a08603861ac18d1dce7b322b0c3fb69c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a08603861ac18d1dce7b322b0c3fb69c5">aes_gcm_dec_128_finalize_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a08603861ac18d1dce7b322b0c3fb69c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">End decryption of a AES-GCM-128 encryption message.  <br /></td></tr>
<tr class="separator:a08603861ac18d1dce7b322b0c3fb69c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e2bc4fff9de3c70ac140ff30e1cdce0" id="r_a8e2bc4fff9de3c70ac140ff30e1cdce0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8e2bc4fff9de3c70ac140ff30e1cdce0">aes_gcm_dec_128_finalize_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a8e2bc4fff9de3c70ac140ff30e1cdce0"><td class="mdescLeft">&#160;</td><td class="mdescRight">End decryption of a AES-GCM-128 encryption message.    <br /></td></tr>
<tr class="separator:a8e2bc4fff9de3c70ac140ff30e1cdce0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fd357a1794d78ac2168bc7eff0442ce" id="r_a0fd357a1794d78ac2168bc7eff0442ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0fd357a1794d78ac2168bc7eff0442ce">aes_gcm_dec_192_finalize_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a0fd357a1794d78ac2168bc7eff0442ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">End decryption of a AES-GCM-192 encryption message.  <br /></td></tr>
<tr class="separator:a0fd357a1794d78ac2168bc7eff0442ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa136a3c06d45e914d15415dee27f001" id="r_afa136a3c06d45e914d15415dee27f001"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#afa136a3c06d45e914d15415dee27f001">aes_gcm_dec_192_finalize_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:afa136a3c06d45e914d15415dee27f001"><td class="mdescLeft">&#160;</td><td class="mdescRight">End decryption of a AES-GCM-192 encryption message.    <br /></td></tr>
<tr class="separator:afa136a3c06d45e914d15415dee27f001"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf7aa2e79dce7a9ed79134c086715fd0" id="r_adf7aa2e79dce7a9ed79134c086715fd0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#adf7aa2e79dce7a9ed79134c086715fd0">aes_gcm_dec_256_finalize_sse</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:adf7aa2e79dce7a9ed79134c086715fd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">End decryption of a AES-GCM-256 encryption message.  <br /></td></tr>
<tr class="separator:adf7aa2e79dce7a9ed79134c086715fd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a791be274839adc3d26d9a32aa319dc3b" id="r_a791be274839adc3d26d9a32aa319dc3b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a791be274839adc3d26d9a32aa319dc3b">aes_gcm_dec_256_finalize_avx_gen4</a> (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *context_data, uint8_t *auth_tag, uint64_t auth_tag_len)</td></tr>
<tr class="memdesc:a791be274839adc3d26d9a32aa319dc3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">End decryption of a AES-GCM-256 encryption message.    <br /></td></tr>
<tr class="separator:a791be274839adc3d26d9a32aa319dc3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46253857355ddae8d17bab1403289d0f" id="r_a46253857355ddae8d17bab1403289d0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a46253857355ddae8d17bab1403289d0f">aes_gcm_precomp_128_sse</a> (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a46253857355ddae8d17bab1403289d0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputation of AES-GCM-128 HashKey constants.  <br /></td></tr>
<tr class="separator:a46253857355ddae8d17bab1403289d0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aecf7277999128599c6cf8432b242ba36" id="r_aecf7277999128599c6cf8432b242ba36"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aecf7277999128599c6cf8432b242ba36">aes_gcm_precomp_128_avx_gen4</a> (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:aecf7277999128599c6cf8432b242ba36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputation of AES-GCM-128 HashKey constants.    <br /></td></tr>
<tr class="separator:aecf7277999128599c6cf8432b242ba36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72d93e3249806eee186d465dc04c09e6" id="r_a72d93e3249806eee186d465dc04c09e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a72d93e3249806eee186d465dc04c09e6">aes_gcm_precomp_192_sse</a> (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a72d93e3249806eee186d465dc04c09e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputation of AES-GCM-192 HashKey constants.  <br /></td></tr>
<tr class="separator:a72d93e3249806eee186d465dc04c09e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cb54cf9321dfb95af2eeb812f41fa8f" id="r_a6cb54cf9321dfb95af2eeb812f41fa8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a6cb54cf9321dfb95af2eeb812f41fa8f">aes_gcm_precomp_192_avx_gen4</a> (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a6cb54cf9321dfb95af2eeb812f41fa8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputation of AES-GCM-192 HashKey constants.    <br /></td></tr>
<tr class="separator:a6cb54cf9321dfb95af2eeb812f41fa8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18001897ea80cdce1f4f608b0922f767" id="r_a18001897ea80cdce1f4f608b0922f767"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a18001897ea80cdce1f4f608b0922f767">aes_gcm_precomp_256_sse</a> (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a18001897ea80cdce1f4f608b0922f767"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputation of AES-GCM-256 HashKey constants.  <br /></td></tr>
<tr class="separator:a18001897ea80cdce1f4f608b0922f767"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abef922c52013630ad70273cef095c564" id="r_abef922c52013630ad70273cef095c564"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#abef922c52013630ad70273cef095c564">aes_gcm_precomp_256_avx_gen4</a> (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:abef922c52013630ad70273cef095c564"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputation of AES-GCM-256 HashKey constants.    <br /></td></tr>
<tr class="separator:abef922c52013630ad70273cef095c564"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d02ac2586befa6cd3fd4921858c33fd" id="r_a5d02ac2586befa6cd3fd4921858c33fd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a5d02ac2586befa6cd3fd4921858c33fd">aes_gcm_pre_128_sse</a> (const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a5d02ac2586befa6cd3fd4921858c33fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-processes AES-GCM-128 key data.  <br /></td></tr>
<tr class="separator:a5d02ac2586befa6cd3fd4921858c33fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d7b8bc454b44abbeaa8f435280f8cb1" id="r_a3d7b8bc454b44abbeaa8f435280f8cb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3d7b8bc454b44abbeaa8f435280f8cb1">aes_gcm_pre_128_avx_gen4</a> (const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a3d7b8bc454b44abbeaa8f435280f8cb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-processes AES-GCM-128 key data.    <br /></td></tr>
<tr class="separator:a3d7b8bc454b44abbeaa8f435280f8cb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0ebc1e7678bde75c25d5c0ec7ab2f7a" id="r_ac0ebc1e7678bde75c25d5c0ec7ab2f7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac0ebc1e7678bde75c25d5c0ec7ab2f7a">aes_gcm_pre_192_sse</a> (const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:ac0ebc1e7678bde75c25d5c0ec7ab2f7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-processes AES-GCM-192 key data.  <br /></td></tr>
<tr class="separator:ac0ebc1e7678bde75c25d5c0ec7ab2f7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab71c95df9bd059e1a5e108d2513a0e2c" id="r_ab71c95df9bd059e1a5e108d2513a0e2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ab71c95df9bd059e1a5e108d2513a0e2c">aes_gcm_pre_192_avx_gen4</a> (const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:ab71c95df9bd059e1a5e108d2513a0e2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-processes AES-GCM-192 key data.    <br /></td></tr>
<tr class="separator:ab71c95df9bd059e1a5e108d2513a0e2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18fac8ea0f3acabb4d5ffab1152f477f" id="r_a18fac8ea0f3acabb4d5ffab1152f477f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a18fac8ea0f3acabb4d5ffab1152f477f">aes_gcm_pre_256_sse</a> (const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a18fac8ea0f3acabb4d5ffab1152f477f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-processes AES-GCM-256 key data.  <br /></td></tr>
<tr class="separator:a18fac8ea0f3acabb4d5ffab1152f477f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a082773f106f399ca73afc56583805a8c" id="r_a082773f106f399ca73afc56583805a8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a082773f106f399ca73afc56583805a8c">aes_gcm_pre_256_avx_gen4</a> (const void *key, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data)</td></tr>
<tr class="memdesc:a082773f106f399ca73afc56583805a8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-processes AES-GCM-256 key data.    <br /></td></tr>
<tr class="separator:a082773f106f399ca73afc56583805a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4931dd6b1b91456bfe885e28ada0aaf3" id="r_a4931dd6b1b91456bfe885e28ada0aaf3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a4931dd6b1b91456bfe885e28ada0aaf3">zuc_eea3_iv_gen</a> (const uint32_t count, const uint8_t bearer, const uint8_t dir, void *iv_ptr)</td></tr>
<tr class="memdesc:a4931dd6b1b91456bfe885e28ada0aaf3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generation of ZUC-EEA3 Initialization Vector.  <br /></td></tr>
<tr class="separator:a4931dd6b1b91456bfe885e28ada0aaf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3cefd0e992f1390110f0ef9a3aa510f" id="r_ae3cefd0e992f1390110f0ef9a3aa510f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ae3cefd0e992f1390110f0ef9a3aa510f">zuc_eia3_iv_gen</a> (const uint32_t count, const uint8_t bearer, const uint8_t dir, void *iv_ptr)</td></tr>
<tr class="memdesc:ae3cefd0e992f1390110f0ef9a3aa510f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generation of ZUC-EIA3 Initialization Vector.  <br /></td></tr>
<tr class="separator:ae3cefd0e992f1390110f0ef9a3aa510f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3876dca52c5c210dd0827b2a472e6d0b" id="r_a3876dca52c5c210dd0827b2a472e6d0b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3876dca52c5c210dd0827b2a472e6d0b">kasumi_f8_iv_gen</a> (const uint32_t count, const uint8_t bearer, const uint8_t dir, void *iv_ptr)</td></tr>
<tr class="memdesc:a3876dca52c5c210dd0827b2a472e6d0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generation of KASUMI F8 Initialization Vector.  <br /></td></tr>
<tr class="separator:a3876dca52c5c210dd0827b2a472e6d0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac886170fc4e70b467383fdf09f0724cf" id="r_ac886170fc4e70b467383fdf09f0724cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac886170fc4e70b467383fdf09f0724cf">kasumi_f9_iv_gen</a> (const uint32_t count, const uint32_t fresh, void *iv_ptr)</td></tr>
<tr class="memdesc:ac886170fc4e70b467383fdf09f0724cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generation of KASUMI F9 Initialization Vector.  <br /></td></tr>
<tr class="separator:ac886170fc4e70b467383fdf09f0724cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cbdb64c0b305cb5af010f9c98f70a43" id="r_a2cbdb64c0b305cb5af010f9c98f70a43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a2cbdb64c0b305cb5af010f9c98f70a43">snow3g_f8_iv_gen</a> (const uint32_t count, const uint8_t bearer, const uint8_t dir, void *iv_ptr)</td></tr>
<tr class="memdesc:a2cbdb64c0b305cb5af010f9c98f70a43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generation of SNOW3G F8 Initialization Vector.  <br /></td></tr>
<tr class="separator:a2cbdb64c0b305cb5af010f9c98f70a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93e7a99927bc37fb4cb03f966fa4ebdd" id="r_a93e7a99927bc37fb4cb03f966fa4ebdd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a93e7a99927bc37fb4cb03f966fa4ebdd">snow3g_f9_iv_gen</a> (const uint32_t count, const uint32_t fresh, const uint8_t dir, void *iv_ptr)</td></tr>
<tr class="memdesc:a93e7a99927bc37fb4cb03f966fa4ebdd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generation of SNOW3G F9 Initialization Vector.  <br /></td></tr>
<tr class="separator:a93e7a99927bc37fb4cb03f966fa4ebdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aecdd69541b6d2a83d19ca804ef4b78d6" id="r_aecdd69541b6d2a83d19ca804ef4b78d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#aecdd69541b6d2a83d19ca804ef4b78d6">imb_clear_mem</a> (void *mem, const size_t size)</td></tr>
<tr class="memdesc:aecdd69541b6d2a83d19ca804ef4b78d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force clearing/zeroing of memory.  <br /></td></tr>
<tr class="separator:aecdd69541b6d2a83d19ca804ef4b78d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8faae8f9387983904125d862c4cac9ab" id="r_a8faae8f9387983904125d862c4cac9ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a8faae8f9387983904125d862c4cac9ab">imb_quic_aes_gcm</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *key_data, const <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a> key_size, const <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> cipher_dir, void *dst_ptr_array[], const void *const src_ptr_array[], const uint64_t len_array[], const void *const iv_ptr_array[], const void *const aad_ptr_array[], const uint64_t aad_len, void *tag_ptr_array[], const uint64_t tag_len, const uint64_t num_packets)</td></tr>
<tr class="memdesc:a8faae8f9387983904125d862c4cac9ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Batch of GCM encrypt/decrypt operations with the same key.  <br /></td></tr>
<tr class="separator:a8faae8f9387983904125d862c4cac9ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89f9807d10f3459444bb649caf9b64ca" id="r_a89f9807d10f3459444bb649caf9b64ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a89f9807d10f3459444bb649caf9b64ca">imb_quic_hp_aes_ecb</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, const void *exp_key_data, void *dst_ptr_array[], const void *const src_ptr_array[], const uint64_t num_packets, const <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a> key_size)</td></tr>
<tr class="memdesc:a89f9807d10f3459444bb649caf9b64ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Batch of AES-ECB encrypt/decrypt operations with the same key.  <br /></td></tr>
<tr class="separator:a89f9807d10f3459444bb649caf9b64ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19dc5776bd2e96303a467c798dd7cf8a" id="r_a19dc5776bd2e96303a467c798dd7cf8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a19dc5776bd2e96303a467c798dd7cf8a">imb_quic_chacha20_poly1305</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, const void *key, const <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> cipher_dir, void *dst_ptr_array[], const void *const src_ptr_array[], const uint64_t len_array[], const void *const iv_ptr_array[], const void *const aad_ptr_array[], const uint64_t aad_len, void *tag_ptr_array[], const uint64_t num_packets)</td></tr>
<tr class="memdesc:a19dc5776bd2e96303a467c798dd7cf8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Batch of CHACHA20-POLY1305 encrypt/decrypt operations with the same key.  <br /></td></tr>
<tr class="separator:a19dc5776bd2e96303a467c798dd7cf8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ed913654b2d1ebf8cab875022d6da92" id="r_a3ed913654b2d1ebf8cab875022d6da92"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a3ed913654b2d1ebf8cab875022d6da92">imb_quic_hp_chacha20</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, const void *key, void *dst_ptr_array[], const void *const src_ptr_array[], const uint64_t num_packets)</td></tr>
<tr class="memdesc:a3ed913654b2d1ebf8cab875022d6da92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Batch of ChaCha20 encrypt operations with the same key.  <br /></td></tr>
<tr class="separator:a3ed913654b2d1ebf8cab875022d6da92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada304337e78ef5a462c97c1f8151ef67" id="r_ada304337e78ef5a462c97c1f8151ef67"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ada304337e78ef5a462c97c1f8151ef67">imb_set_session</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *job)</td></tr>
<tr class="memdesc:ada304337e78ef5a462c97c1f8151ef67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets up suite_id and session_id fields for selected cipher suite in provided <em>job</em> structure.  <br /></td></tr>
<tr class="separator:ada304337e78ef5a462c97c1f8151ef67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a474ce25401eac36333b69f27c669849c" id="r_a474ce25401eac36333b69f27c669849c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a474ce25401eac36333b69f27c669849c">imb_self_test_set_cb</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, <a class="el" href="intel-ipsec-mb_8h.html#a6fc0ee92d9cbee157810685d592cc13a">imb_self_test_cb_t</a> cb_fn, void *cb_arg)</td></tr>
<tr class="memdesc:a474ce25401eac36333b69f27c669849c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets callback function to be invoked when running a self test.  <br /></td></tr>
<tr class="separator:a474ce25401eac36333b69f27c669849c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16fb370395bb6facfbbf7dc95af4c8a4" id="r_a16fb370395bb6facfbbf7dc95af4c8a4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a16fb370395bb6facfbbf7dc95af4c8a4">imb_self_test_get_cb</a> (<a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, <a class="el" href="intel-ipsec-mb_8h.html#a6fc0ee92d9cbee157810685d592cc13a">imb_self_test_cb_t</a> *cb_fn, void **cb_arg)</td></tr>
<tr class="memdesc:a16fb370395bb6facfbbf7dc95af4c8a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves details of callback function to be invoked when running a self test.  <br /></td></tr>
<tr class="separator:a16fb370395bb6facfbbf7dc95af4c8a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2ec25aa86eed7f2dbe11c5f945bb00b" id="r_ac2ec25aa86eed7f2dbe11c5f945bb00b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#ac2ec25aa86eed7f2dbe11c5f945bb00b">imb_get_arch_type_string</a> (const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *state, const char **arch_type, const char **description)</td></tr>
<tr class="memdesc:ac2ec25aa86eed7f2dbe11c5f945bb00b"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to get a string with the architecture type being used.  <br /></td></tr>
<tr class="separator:ac2ec25aa86eed7f2dbe11c5f945bb00b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f415a67fcedcb31c2cec879655c3b86" id="r_a0f415a67fcedcb31c2cec879655c3b86"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a0f415a67fcedcb31c2cec879655c3b86">imb_hash_burst_get_size</a> (const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *mb_mgr, const <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a> algo, unsigned *out_burst_size)</td></tr>
<tr class="memdesc:a0f415a67fcedcb31c2cec879655c3b86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves minimum burst size for good performance on hash algorithms.  <br /></td></tr>
<tr class="separator:a0f415a67fcedcb31c2cec879655c3b86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57450d08e56185d460002d62b81ddb94" id="r_a57450d08e56185d460002d62b81ddb94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a57450d08e56185d460002d62b81ddb94">imb_cipher_burst_get_size</a> (const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *mb_mgr, const <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> cipher_mode, unsigned *out_burst_size)</td></tr>
<tr class="memdesc:a57450d08e56185d460002d62b81ddb94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves minimum burst size for good performance on cipher algorithms.  <br /></td></tr>
<tr class="separator:a57450d08e56185d460002d62b81ddb94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a174e5926a6f6bdf56c15c1e84eecb342" id="r_a174e5926a6f6bdf56c15c1e84eecb342"><td class="memItemLeft" align="right" valign="top"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="intel-ipsec-mb_8h.html#a174e5926a6f6bdf56c15c1e84eecb342">imb_aead_burst_get_size</a> (const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *mb_mgr, const <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> cipher_mode, unsigned *out_burst_size)</td></tr>
<tr class="memdesc:a174e5926a6f6bdf56c15c1e84eecb342"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves minimum burst size for good performance on AEAD algorithms.  <br /></td></tr>
<tr class="separator:a174e5926a6f6bdf56c15c1e84eecb342"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="af93b819ac40799ac392e16f6a90729fd" name="af93b819ac40799ac392e16f6a90729fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af93b819ac40799ac392e16f6a90729fd">&#9670;&#160;</a></span>__forceinline</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __forceinline&#160;&#160;&#160;static __forceinline</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad920a47ed8f57af8b2cf6bcd18a3e41c" name="ad920a47ed8f57af8b2cf6bcd18a3e41c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad920a47ed8f57af8b2cf6bcd18a3e41c">&#9670;&#160;</a></span>DECLARE_ALIGNED</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_ALIGNED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">decl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">alignval&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;__declspec(align(alignval)) decl</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Macros for aligning data structures and function inlines </p>

</div>
</div>
<a id="a1e122b460a714f2981f94bf7f4bba547" name="a1e122b460a714f2981f94bf7f4bba547"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e122b460a714f2981f94bf7f4bba547">&#9670;&#160;</a></span>IMB_AES128_CFB_ONE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_CFB_ONE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;aes128_cfb_one((_dst), (_src), (_iv), (_exp_key), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-CFB-128 Encrypt/Decrypt up to one block. </p>
<p>Processes only one buffer at a time. Designed to manage partial blocks of DOCSIS 3.1 SEC BPI.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Plaintext/Ciphertext output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Plaintext/Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Pointer to 16 byte IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Pointer to expanded AES keys </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length of data in bytes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2b026b2a901c76a1512eb9c8c80f9709" name="a2b026b2a901c76a1512eb9c8c80f9709"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b026b2a901c76a1512eb9c8c80f9709">&#9670;&#160;</a></span>IMB_AES128_GCM_DEC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_DEC</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;gcm128_dec((_exp_key), (_ctx), (_dst), (_src), (_len), (_iv), (_aad), (_aadl),    \</div>
<div class="line">                            (_tag), (_tagl)))</div>
</div><!-- fragment -->
</div>
</div>
<a id="a280b9231c76c525a62d0ef819abd2133" name="a280b9231c76c525a62d0ef819abd2133"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a280b9231c76c525a62d0ef819abd2133">&#9670;&#160;</a></span>IMB_AES128_GCM_DEC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_DEC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_dec_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a2f6014cfaaa0ee5f454e2771ff6b5829" name="a2f6014cfaaa0ee5f454e2771ff6b5829"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f6014cfaaa0ee5f454e2771ff6b5829">&#9670;&#160;</a></span>IMB_AES128_GCM_DEC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_DEC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_dec_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adb65fc01b63a475cca4cf532ace005b6" name="adb65fc01b63a475cca4cf532ace005b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb65fc01b63a475cca4cf532ace005b6">&#9670;&#160;</a></span>IMB_AES128_GCM_ENC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_ENC</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;gcm128_enc((_exp_key), (_ctx), (_dst), (_src), (_len), (_iv), (_aad), (_aadl),    \</div>
<div class="line">                            (_tag), (_tagl)))</div>
</div><!-- fragment -->
</div>
</div>
<a id="aaf13d46f5832cf9e0cb50f7fcde020be" name="aaf13d46f5832cf9e0cb50f7fcde020be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaf13d46f5832cf9e0cb50f7fcde020be">&#9670;&#160;</a></span>IMB_AES128_GCM_ENC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_ENC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_enc_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab1f4c52b4145946e80ef698e469d67db" name="ab1f4c52b4145946e80ef698e469d67db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1f4c52b4145946e80ef698e469d67db">&#9670;&#160;</a></span>IMB_AES128_GCM_ENC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_ENC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_enc_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad0a8ea6b81df94d066b028ca7bf656ef" name="ad0a8ea6b81df94d066b028ca7bf656ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0a8ea6b81df94d066b028ca7bf656ef">&#9670;&#160;</a></span>IMB_AES128_GCM_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_init((_exp_key), (_ctx), (_iv), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a04142f11a678c0419dff242a0ccbd2e6" name="a04142f11a678c0419dff242a0ccbd2e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04142f11a678c0419dff242a0ccbd2e6">&#9670;&#160;</a></span>IMB_AES128_GCM_INIT_VAR_IV</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_INIT_VAR_IV</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ivl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm128_init_var_iv((_exp_key), (_ctx), (_iv), (_ivl), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5a442c1fcd7d427bf78e804da32bdbd1" name="a5a442c1fcd7d427bf78e804da32bdbd1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a442c1fcd7d427bf78e804da32bdbd1">&#9670;&#160;</a></span>IMB_AES128_GCM_PRE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_PRE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;gcm128_pre((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a1c63dfec645afa671f93f4fa65a6996e" name="a1c63dfec645afa671f93f4fa65a6996e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1c63dfec645afa671f93f4fa65a6996e">&#9670;&#160;</a></span>IMB_AES128_GCM_PRECOMP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GCM_PRECOMP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;gcm128_precomp((_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af0bd4f5841d41433339717e6b97c15ad" name="af0bd4f5841d41433339717e6b97c15ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0bd4f5841d41433339717e6b97c15ad">&#9670;&#160;</a></span>IMB_AES128_GMAC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GMAC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac128_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af315c30a8cbd3c20735e22f462b47964" name="af315c30a8cbd3c20735e22f462b47964"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af315c30a8cbd3c20735e22f462b47964">&#9670;&#160;</a></span>IMB_AES128_GMAC_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GMAC_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ivl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac128_init((_exp_key), (_ctx), (_iv), (_ivl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af0b2ba1a0f9b099a06a1ba04380b0e2a" name="af0b2ba1a0f9b099a06a1ba04380b0e2a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0b2ba1a0f9b099a06a1ba04380b0e2a">&#9670;&#160;</a></span>IMB_AES128_GMAC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES128_GMAC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac128_update((_exp_key), (_ctx), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aedd2b84ebfbcb56ac5176e8793490047" name="aedd2b84ebfbcb56ac5176e8793490047"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aedd2b84ebfbcb56ac5176e8793490047">&#9670;&#160;</a></span>IMB_AES192_GCM_DEC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_DEC</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;gcm192_dec((_exp_key), (_ctx), (_dst), (_src), (_len), (_iv), (_aad), (_aadl),    \</div>
<div class="line">                            (_tag), (_tagl)))</div>
</div><!-- fragment -->
</div>
</div>
<a id="a759bbe1b8494c3157f1a506c003b700b" name="a759bbe1b8494c3157f1a506c003b700b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a759bbe1b8494c3157f1a506c003b700b">&#9670;&#160;</a></span>IMB_AES192_GCM_DEC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_DEC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_dec_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae25c4f893fc29f09d03a8ece5fddc82f" name="ae25c4f893fc29f09d03a8ece5fddc82f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae25c4f893fc29f09d03a8ece5fddc82f">&#9670;&#160;</a></span>IMB_AES192_GCM_DEC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_DEC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_dec_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af7548f17077a0b187a4ecfde4e0ff5d9" name="af7548f17077a0b187a4ecfde4e0ff5d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7548f17077a0b187a4ecfde4e0ff5d9">&#9670;&#160;</a></span>IMB_AES192_GCM_ENC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_ENC</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;gcm192_enc((_exp_key), (_ctx), (_dst), (_src), (_len), (_iv), (_aad), (_aadl),    \</div>
<div class="line">                            (_tag), (_tagl)))</div>
</div><!-- fragment -->
</div>
</div>
<a id="a1e36a361be137a5d49b0798f054403bd" name="a1e36a361be137a5d49b0798f054403bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e36a361be137a5d49b0798f054403bd">&#9670;&#160;</a></span>IMB_AES192_GCM_ENC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_ENC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_enc_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a456f5bed8eb67603bdebfda230f76957" name="a456f5bed8eb67603bdebfda230f76957"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a456f5bed8eb67603bdebfda230f76957">&#9670;&#160;</a></span>IMB_AES192_GCM_ENC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_ENC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_enc_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8cd402fe539de3fc8ff4062c2804096f" name="a8cd402fe539de3fc8ff4062c2804096f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cd402fe539de3fc8ff4062c2804096f">&#9670;&#160;</a></span>IMB_AES192_GCM_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_init((_exp_key), (_ctx), (_iv), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a97791c976660a673405e6fa22ef3d262" name="a97791c976660a673405e6fa22ef3d262"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97791c976660a673405e6fa22ef3d262">&#9670;&#160;</a></span>IMB_AES192_GCM_INIT_VAR_IV</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_INIT_VAR_IV</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ivl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm192_init_var_iv((_exp_key), (_ctx), (_iv), (_ivl), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a003f16aac382baff7a6b83040e58e471" name="a003f16aac382baff7a6b83040e58e471"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a003f16aac382baff7a6b83040e58e471">&#9670;&#160;</a></span>IMB_AES192_GCM_PRE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_PRE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;gcm192_pre((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac7b3bcfd3ecbe7b2b8c7da963310b87b" name="ac7b3bcfd3ecbe7b2b8c7da963310b87b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7b3bcfd3ecbe7b2b8c7da963310b87b">&#9670;&#160;</a></span>IMB_AES192_GCM_PRECOMP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GCM_PRECOMP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;gcm192_precomp((_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a16a6f89fd4131c406d6ee7a1aeb663eb" name="a16a6f89fd4131c406d6ee7a1aeb663eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16a6f89fd4131c406d6ee7a1aeb663eb">&#9670;&#160;</a></span>IMB_AES192_GMAC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GMAC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac192_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a25ed49507e66a6e98eab4a3d34e75231" name="a25ed49507e66a6e98eab4a3d34e75231"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a25ed49507e66a6e98eab4a3d34e75231">&#9670;&#160;</a></span>IMB_AES192_GMAC_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GMAC_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ivl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac192_init((_exp_key), (_ctx), (_iv), (_ivl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a113d0f4320e929f89786773f7d11c5c8" name="a113d0f4320e929f89786773f7d11c5c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a113d0f4320e929f89786773f7d11c5c8">&#9670;&#160;</a></span>IMB_AES192_GMAC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES192_GMAC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac192_update((_exp_key), (_ctx), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab4d68ab67a7d4a471f5cb454301aac9d" name="ab4d68ab67a7d4a471f5cb454301aac9d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4d68ab67a7d4a471f5cb454301aac9d">&#9670;&#160;</a></span>IMB_AES256_CFB_ONE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_CFB_ONE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;aes256_cfb_one((_dst), (_src), (_iv), (_exp_key), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-CFB-256 Encrypt/Decrypt up to one block. </p>
<p>Processes only one buffer at a time. Designed to manage partial blocks of DOCSIS 3.1 SEC BPI.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Plaintext/Ciphertext output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Plaintext/Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Pointer to 16 byte IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Pointer to expanded AES keys </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length of data in bytes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1eb77771626f83eba8482473d29ffbb1" name="a1eb77771626f83eba8482473d29ffbb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1eb77771626f83eba8482473d29ffbb1">&#9670;&#160;</a></span>IMB_AES256_GCM_DEC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_DEC</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;gcm256_dec((_exp_key), (_ctx), (_dst), (_src), (_len), (_iv), (_aad), (_aadl),    \</div>
<div class="line">                            (_tag), (_tagl)))</div>
</div><!-- fragment -->
</div>
</div>
<a id="a64d9473bc4f28c0b783baa4a31b9930e" name="a64d9473bc4f28c0b783baa4a31b9930e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64d9473bc4f28c0b783baa4a31b9930e">&#9670;&#160;</a></span>IMB_AES256_GCM_DEC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_DEC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_dec_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a70847fd3bb5d1be79ebfa4e9104edabd" name="a70847fd3bb5d1be79ebfa4e9104edabd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70847fd3bb5d1be79ebfa4e9104edabd">&#9670;&#160;</a></span>IMB_AES256_GCM_DEC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_DEC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_dec_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a556333acdc2db1a2540a1cd1af644ca9" name="a556333acdc2db1a2540a1cd1af644ca9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a556333acdc2db1a2540a1cd1af644ca9">&#9670;&#160;</a></span>IMB_AES256_GCM_ENC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_ENC</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;gcm256_enc((_exp_key), (_ctx), (_dst), (_src), (_len), (_iv), (_aad), (_aadl),    \</div>
<div class="line">                            (_tag), (_tagl)))</div>
</div><!-- fragment -->
</div>
</div>
<a id="a1f49fe7109315eb479ac1c9969e2f877" name="a1f49fe7109315eb479ac1c9969e2f877"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f49fe7109315eb479ac1c9969e2f877">&#9670;&#160;</a></span>IMB_AES256_GCM_ENC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_ENC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_enc_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a223c00c636e2552e7a3dd1a97952cc6a" name="a223c00c636e2552e7a3dd1a97952cc6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a223c00c636e2552e7a3dd1a97952cc6a">&#9670;&#160;</a></span>IMB_AES256_GCM_ENC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_ENC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_enc_update((_exp_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8049111340bf2694799eb4e42b0a82c3" name="a8049111340bf2694799eb4e42b0a82c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8049111340bf2694799eb4e42b0a82c3">&#9670;&#160;</a></span>IMB_AES256_GCM_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_init((_exp_key), (_ctx), (_iv), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a61ddc1485781aba1969fe3ca97a22ded" name="a61ddc1485781aba1969fe3ca97a22ded"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61ddc1485781aba1969fe3ca97a22ded">&#9670;&#160;</a></span>IMB_AES256_GCM_INIT_VAR_IV</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_INIT_VAR_IV</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ivl, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gcm256_init_var_iv((_exp_key), (_ctx), (_iv), (_ivl), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5771f5169d3f3af3a2419ccd8275a754" name="a5771f5169d3f3af3a2419ccd8275a754"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5771f5169d3f3af3a2419ccd8275a754">&#9670;&#160;</a></span>IMB_AES256_GCM_PRE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_PRE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;gcm256_pre((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4fa417a748ca30a961334bf91297dfda" name="a4fa417a748ca30a961334bf91297dfda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4fa417a748ca30a961334bf91297dfda">&#9670;&#160;</a></span>IMB_AES256_GCM_PRECOMP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GCM_PRECOMP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;gcm256_precomp((_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abfbb7469f7d0240bb3d9a0e5f368b19e" name="abfbb7469f7d0240bb3d9a0e5f368b19e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abfbb7469f7d0240bb3d9a0e5f368b19e">&#9670;&#160;</a></span>IMB_AES256_GMAC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GMAC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac256_finalize((_exp_key), (_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a3d57940a54e9d94fa14dc008cd959092" name="a3d57940a54e9d94fa14dc008cd959092"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d57940a54e9d94fa14dc008cd959092">&#9670;&#160;</a></span>IMB_AES256_GMAC_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GMAC_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ivl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac256_init((_exp_key), (_ctx), (_iv), (_ivl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a91b8d98c7ffce8179ef953493a959d4b" name="a91b8d98c7ffce8179ef953493a959d4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a91b8d98c7ffce8179ef953493a959d4b">&#9670;&#160;</a></span>IMB_AES256_GMAC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES256_GMAC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;gmac256_update((_exp_key), (_ctx), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab1b5db5ac58714b6f69e754a0c4ca793" name="ab1b5db5ac58714b6f69e754a0c4ca793"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1b5db5ac58714b6f69e754a0c4ca793">&#9670;&#160;</a></span>IMB_AES_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_BLOCK_SIZE&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa1e9006a8a76ba7fb09b97816d7fdfe5" name="aa1e9006a8a76ba7fb09b97816d7fdfe5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1e9006a8a76ba7fb09b97816d7fdfe5">&#9670;&#160;</a></span>IMB_AES_CMAC_SUBKEY_GEN_128</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_CMAC_SUBKEY_GEN_128</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key2&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;cmac_subkey_gen_128((_exp_key), (_key1), (_key2)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate AES-128-CMAC subkeys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Input expanded AES-128-CMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_key1</td><td>Subkey 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_key2</td><td>Subkey 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aca7b22139c297858794c7268439e88f0" name="aca7b22139c297858794c7268439e88f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca7b22139c297858794c7268439e88f0">&#9670;&#160;</a></span>IMB_AES_CMAC_SUBKEY_GEN_256</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_CMAC_SUBKEY_GEN_256</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key2&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;cmac_subkey_gen_256((_exp_key), (_key1), (_key2)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate AES-256-CMAC subkeys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Input expanded AES-256-CMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_key1</td><td>Subkey 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_key2</td><td>Subkey 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afa111339421e794c2643df2ecf86a8c0" name="afa111339421e794c2643df2ecf86a8c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa111339421e794c2643df2ecf86a8c0">&#9670;&#160;</a></span>IMB_AES_KEYEXP_128</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_KEYEXP_128</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_enc_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dec_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;keyexp_128((_key), (_enc_exp_key), (_dec_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption/decryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_enc_exp_key</td><td>AES-128 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dec_exp_key</td><td>AES-128 decryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a574d86849e2c9ca402305eb479ca558d" name="a574d86849e2c9ca402305eb479ca558d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a574d86849e2c9ca402305eb479ca558d">&#9670;&#160;</a></span>IMB_AES_KEYEXP_192</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_KEYEXP_192</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_enc_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dec_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;keyexp_192((_key), (_enc_exp_key), (_dec_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption/decryption AES-192 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>AES-192 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_enc_exp_key</td><td>AES-192 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dec_exp_key</td><td>AES-192 decryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a003306124dae4920161ed6d4a7bf4e2f" name="a003306124dae4920161ed6d4a7bf4e2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a003306124dae4920161ed6d4a7bf4e2f">&#9670;&#160;</a></span>IMB_AES_KEYEXP_256</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_KEYEXP_256</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_enc_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dec_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;keyexp_256((_key), (_enc_exp_key), (_dec_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_enc_exp_key</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dec_exp_key</td><td>AES-256 decryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5a5f2342f2b1e65e41084d915c3b2cda" name="a5a5f2342f2b1e65e41084d915c3b2cda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a5f2342f2b1e65e41084d915c3b2cda">&#9670;&#160;</a></span>IMB_AES_XCBC_KEYEXP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_AES_XCBC_KEYEXP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key3&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;xcbc_keyexp((_key), (_exp_key), (_exp_key2), (_exp_key3)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate AES-128-XCBC expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>AES-128-XCBC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key</td><td>k1 expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key2</td><td>k2 expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key3</td><td>k3 expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af0f2f0bfad62f740bc2e22e60f48af8d" name="af0f2f0bfad62f740bc2e22e60f48af8d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0f2f0bfad62f740bc2e22e60f48af8d">&#9670;&#160;</a></span>IMB_ASSERT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ASSERT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">x</td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Custom ASSERT and DIM macros </p>

</div>
</div>
<a id="a96511040da293d22903654658b02e0e3" name="a96511040da293d22903654658b02e0e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96511040da293d22903654658b02e0e3">&#9670;&#160;</a></span>IMB_CCM_AAD_MAX_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CCM_AAD_MAX_SIZE&#160;&#160;&#160;(46) /* Maximum CCM AAD size */</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8f6a258b6a13952fad9c217194c716f0" name="a8f6a258b6a13952fad9c217194c716f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f6a258b6a13952fad9c217194c716f0">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_DEC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_DEC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_finalize((_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4ac8fd429d9f356003522200811b0bed" name="a4ac8fd429d9f356003522200811b0bed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ac8fd429d9f356003522200811b0bed">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_DEC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_DEC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_dec_update((_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7575d2fafb2b970bd08a49a556602031" name="a7575d2fafb2b970bd08a49a556602031"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7575d2fafb2b970bd08a49a556602031">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_ENC_FINALIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_ENC_FINALIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_finalize((_ctx), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a2abd7cd460b99467836188d62272cd2b" name="a2abd7cd460b99467836188d62272cd2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2abd7cd460b99467836188d62272cd2b">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_ENC_UPDATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_ENC_UPDATE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_enc_update((_key), (_ctx), (_dst), (_src), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adb8ac3238e6dfe39a10e64602a96e643" name="adb8ac3238e6dfe39a10e64602a96e643"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb8ac3238e6dfe39a10e64602a96e643">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_INIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_INIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_ctx, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aad, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_aadl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;chacha20_poly1305_init((_key), (_ctx), (_iv), (_aad), (_aadl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a682613e829c603f3c328f7fd6813d6ff" name="a682613e829c603f3c328f7fd6813d6ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a682613e829c603f3c328f7fd6813d6ff">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_IV_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_IV_SIZE&#160;&#160;&#160;12</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a3260a6651abb0c37dc6558770966d582" name="a3260a6651abb0c37dc6558770966d582"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3260a6651abb0c37dc6558770966d582">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_KEY_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_KEY_SIZE&#160;&#160;&#160;32</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aef05a0c3b069c6076a3f1255582b3e38" name="aef05a0c3b069c6076a3f1255582b3e38"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef05a0c3b069c6076a3f1255582b3e38">&#9670;&#160;</a></span>IMB_CHACHA20_POLY1305_MAX_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CHACHA20_POLY1305_MAX_LEN&#160;&#160;&#160;UINT64_C((1ULL &lt;&lt; 38) - 64)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac0a92622a85423541536321231a6cb7d" name="ac0a92622a85423541536321231a6cb7d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0a92622a85423541536321231a6cb7d">&#9670;&#160;</a></span>IMB_CPUFLAGS_AVX2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_AVX2</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        (<a class="code hl_define" href="intel-ipsec-mb_8h.html#a5654f563aaad731df22c8e8517c9154c">IMB_CPUFLAGS_SSE</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a7af992d12b4f9a6e789384969a066056">IMB_FEATURE_AVX</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#af8159849ff1ccdc72382877cb596a55f">IMB_FEATURE_XSAVE</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a060ddf13837acb6d94bb927c8e73a74f">IMB_FEATURE_OSXSAVE</a> |            \</div>
<div class="line">         <a class="code hl_define" href="intel-ipsec-mb_8h.html#a225e2cd9c1445795fc62879eabad2530">IMB_FEATURE_AVX2</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a557f3de4bcc0bd7e9bd90e5e1d1b9b09">IMB_FEATURE_BMI2</a>)</div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a060ddf13837acb6d94bb927c8e73a74f"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a060ddf13837acb6d94bb927c8e73a74f">IMB_FEATURE_OSXSAVE</a></div><div class="ttdeci">#define IMB_FEATURE_OSXSAVE</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:934</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a225e2cd9c1445795fc62879eabad2530"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a225e2cd9c1445795fc62879eabad2530">IMB_FEATURE_AVX2</a></div><div class="ttdeci">#define IMB_FEATURE_AVX2</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:910</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a557f3de4bcc0bd7e9bd90e5e1d1b9b09"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a557f3de4bcc0bd7e9bd90e5e1d1b9b09">IMB_FEATURE_BMI2</a></div><div class="ttdeci">#define IMB_FEATURE_BMI2</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:925</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a5654f563aaad731df22c8e8517c9154c"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a5654f563aaad731df22c8e8517c9154c">IMB_CPUFLAGS_SSE</a></div><div class="ttdeci">#define IMB_CPUFLAGS_SSE</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:952</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a7af992d12b4f9a6e789384969a066056"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a7af992d12b4f9a6e789384969a066056">IMB_FEATURE_AVX</a></div><div class="ttdeci">#define IMB_FEATURE_AVX</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:909</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_af8159849ff1ccdc72382877cb596a55f"><div class="ttname"><a href="intel-ipsec-mb_8h.html#af8159849ff1ccdc72382877cb596a55f">IMB_FEATURE_XSAVE</a></div><div class="ttdeci">#define IMB_FEATURE_XSAVE</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:933</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a18f17a6bcef83c3976ca7a9b4ca624de" name="a18f17a6bcef83c3976ca7a9b4ca624de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18f17a6bcef83c3976ca7a9b4ca624de">&#9670;&#160;</a></span>IMB_CPUFLAGS_AVX2_T2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_AVX2_T2</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        (<a class="code hl_define" href="intel-ipsec-mb_8h.html#ac0a92622a85423541536321231a6cb7d">IMB_CPUFLAGS_AVX2</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#acb9c15eabfb9bafeb15a06886fa91e90">IMB_FEATURE_SHANI</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#af4321e4e3c947f9b9fb7f204aaecf2c3">IMB_FEATURE_VAES</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a153d695ecd1af69a0d23385a50654614">IMB_FEATURE_VPCLMULQDQ</a> |       \</div>
<div class="line">         <a class="code hl_define" href="intel-ipsec-mb_8h.html#aa67ab4088ac2f8cadbe839101d276567">IMB_FEATURE_GFNI</a>)</div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a153d695ecd1af69a0d23385a50654614"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a153d695ecd1af69a0d23385a50654614">IMB_FEATURE_VPCLMULQDQ</a></div><div class="ttdeci">#define IMB_FEATURE_VPCLMULQDQ</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:920</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_aa67ab4088ac2f8cadbe839101d276567"><div class="ttname"><a href="intel-ipsec-mb_8h.html#aa67ab4088ac2f8cadbe839101d276567">IMB_FEATURE_GFNI</a></div><div class="ttdeci">#define IMB_FEATURE_GFNI</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:923</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_ac0a92622a85423541536321231a6cb7d"><div class="ttname"><a href="intel-ipsec-mb_8h.html#ac0a92622a85423541536321231a6cb7d">IMB_CPUFLAGS_AVX2</a></div><div class="ttdeci">#define IMB_CPUFLAGS_AVX2</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:955</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_acb9c15eabfb9bafeb15a06886fa91e90"><div class="ttname"><a href="intel-ipsec-mb_8h.html#acb9c15eabfb9bafeb15a06886fa91e90">IMB_FEATURE_SHANI</a></div><div class="ttdeci">#define IMB_FEATURE_SHANI</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:904</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_af4321e4e3c947f9b9fb7f204aaecf2c3"><div class="ttname"><a href="intel-ipsec-mb_8h.html#af4321e4e3c947f9b9fb7f204aaecf2c3">IMB_FEATURE_VAES</a></div><div class="ttdeci">#define IMB_FEATURE_VAES</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:919</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a6e356586d2d3d7e93ff1b23d4a90b344" name="a6e356586d2d3d7e93ff1b23d4a90b344"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e356586d2d3d7e93ff1b23d4a90b344">&#9670;&#160;</a></span>IMB_CPUFLAGS_AVX2_T3</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_AVX2_T3&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#a18f17a6bcef83c3976ca7a9b4ca624de">IMB_CPUFLAGS_AVX2_T2</a> | <a class="el" href="intel-ipsec-mb_8h.html#a8a946f162ff5e363d04f8b44d2f48747">IMB_FEATURE_AVX_IFMA</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae19bb873a98c070290e6773893f9a840" name="ae19bb873a98c070290e6773893f9a840"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae19bb873a98c070290e6773893f9a840">&#9670;&#160;</a></span>IMB_CPUFLAGS_AVX2_T4</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_AVX2_T4&#160;&#160;&#160;        (<a class="el" href="intel-ipsec-mb_8h.html#a6e356586d2d3d7e93ff1b23d4a90b344">IMB_CPUFLAGS_AVX2_T3</a> | <a class="el" href="intel-ipsec-mb_8h.html#a42db17ecba592d31b3476e69eaa731c1">IMB_FEATURE_SM3NI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a893592aaa79eee3a42f62ac0fec31892">IMB_FEATURE_SM4NI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a3a5a4178425ed5ed19368bbcd6dec799">IMB_FEATURE_SHA512NI</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0a250932ede6ca7b69f5c763c24cf51d" name="a0a250932ede6ca7b69f5c763c24cf51d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a250932ede6ca7b69f5c763c24cf51d">&#9670;&#160;</a></span>IMB_CPUFLAGS_AVX512</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_AVX512&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#ac0a92622a85423541536321231a6cb7d">IMB_CPUFLAGS_AVX2</a> | <a class="el" href="intel-ipsec-mb_8h.html#ae6d6e3427c81b278d64f0189401c4964">IMB_FEATURE_AVX512_SKX</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af7bdbff703949eb2cf2dd3d3a08803de" name="af7bdbff703949eb2cf2dd3d3a08803de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7bdbff703949eb2cf2dd3d3a08803de">&#9670;&#160;</a></span>IMB_CPUFLAGS_AVX512_T2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_AVX512_T2</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        (<a class="code hl_define" href="intel-ipsec-mb_8h.html#a0a250932ede6ca7b69f5c763c24cf51d">IMB_CPUFLAGS_AVX512</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#af4321e4e3c947f9b9fb7f204aaecf2c3">IMB_FEATURE_VAES</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a153d695ecd1af69a0d23385a50654614">IMB_FEATURE_VPCLMULQDQ</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#aa67ab4088ac2f8cadbe839101d276567">IMB_FEATURE_GFNI</a> |      \</div>
<div class="line">         <a class="code hl_define" href="intel-ipsec-mb_8h.html#a0134dfaffe12427a8f2182247c6f1f48">IMB_FEATURE_AVX512_IFMA</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#acb9c15eabfb9bafeb15a06886fa91e90">IMB_FEATURE_SHANI</a>)</div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a0134dfaffe12427a8f2182247c6f1f48"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a0134dfaffe12427a8f2182247c6f1f48">IMB_FEATURE_AVX512_IFMA</a></div><div class="ttdeci">#define IMB_FEATURE_AVX512_IFMA</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:924</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a0a250932ede6ca7b69f5c763c24cf51d"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a0a250932ede6ca7b69f5c763c24cf51d">IMB_CPUFLAGS_AVX512</a></div><div class="ttdeci">#define IMB_CPUFLAGS_AVX512</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:958</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a6afb888ab232bab1c3ca027eb071f388" name="a6afb888ab232bab1c3ca027eb071f388"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6afb888ab232bab1c3ca027eb071f388">&#9670;&#160;</a></span>IMB_CPUFLAGS_NO_AESNI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_NO_AESNI&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#abcc243fc505aca3eac6963eff25e9b99">IMB_FEATURE_SSE4_2</a> | <a class="el" href="intel-ipsec-mb_8h.html#a5eef394935c651931b1cf560f31c841c">IMB_FEATURE_CMOV</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>CPU flags needed for each implementation </p>

</div>
</div>
<a id="a5654f563aaad731df22c8e8517c9154c" name="a5654f563aaad731df22c8e8517c9154c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5654f563aaad731df22c8e8517c9154c">&#9670;&#160;</a></span>IMB_CPUFLAGS_SSE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_SSE&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#a6afb888ab232bab1c3ca027eb071f388">IMB_CPUFLAGS_NO_AESNI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a19c147087d2ae918baa22f90fa9b3b05">IMB_FEATURE_AESNI</a> | <a class="el" href="intel-ipsec-mb_8h.html#a1af54a4a862936a6793af2ff44163ba5">IMB_FEATURE_PCLMULQDQ</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae6776750b801d7e177c152569c10c546" name="ae6776750b801d7e177c152569c10c546"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6776750b801d7e177c152569c10c546">&#9670;&#160;</a></span>IMB_CPUFLAGS_SSE_T2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_SSE_T2&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#a5654f563aaad731df22c8e8517c9154c">IMB_CPUFLAGS_SSE</a> | <a class="el" href="intel-ipsec-mb_8h.html#acb9c15eabfb9bafeb15a06886fa91e90">IMB_FEATURE_SHANI</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa1cc7ac79ca44f06e3caa18fdd6d441a" name="aa1cc7ac79ca44f06e3caa18fdd6d441a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1cc7ac79ca44f06e3caa18fdd6d441a">&#9670;&#160;</a></span>IMB_CPUFLAGS_SSE_T3</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CPUFLAGS_SSE_T3&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#ae6776750b801d7e177c152569c10c546">IMB_CPUFLAGS_SSE_T2</a> | <a class="el" href="intel-ipsec-mb_8h.html#aa67ab4088ac2f8cadbe839101d276567">IMB_FEATURE_GFNI</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac7406ab5572b4af93ff8dbbc8ee0c961" name="ac7406ab5572b4af93ff8dbbc8ee0c961"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7406ab5572b4af93ff8dbbc8ee0c961">&#9670;&#160;</a></span>IMB_CRC10_IUUP_DATA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC10_IUUP_DATA</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc10_iuup_data(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>IUUP CRC10 function (3GPP TS 25.415) </p>

</div>
</div>
<a id="ae35b6b1b19ef6d599d47591f6c1e1732" name="ae35b6b1b19ef6d599d47591f6c1e1732"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae35b6b1b19ef6d599d47591f6c1e1732">&#9670;&#160;</a></span>IMB_CRC11_FP_HEADER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC11_FP_HEADER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc11_fp_header(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Framing Protocol CRC11 function (3GPP TS 25.435, 3GPP TS 25.427) </p>

</div>
</div>
<a id="abe747d2365eb0393ab748c218029e3c6" name="abe747d2365eb0393ab748c218029e3c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe747d2365eb0393ab748c218029e3c6">&#9670;&#160;</a></span>IMB_CRC16_FP_DATA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC16_FP_DATA</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc16_fp_data(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Framing Protocol CRC16 function (3GPP TS 25.435, 3GPP TS 25.427) </p>

</div>
</div>
<a id="a78217e8116876c0ecbe82fd3d417cc1c" name="a78217e8116876c0ecbe82fd3d417cc1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a78217e8116876c0ecbe82fd3d417cc1c">&#9670;&#160;</a></span>IMB_CRC16_X25</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC16_X25</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc16_x25(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>CRC16 X25 function </p>

</div>
</div>
<a id="a6ff60117e0ff260865cd80323306479b" name="a6ff60117e0ff260865cd80323306479b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ff60117e0ff260865cd80323306479b">&#9670;&#160;</a></span>IMB_CRC24_LTE_A</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC24_LTE_A</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc24_lte_a(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>LTE CRC24A function </p>

</div>
</div>
<a id="ae07e15be0652ca8faa23c6f907d83e03" name="ae07e15be0652ca8faa23c6f907d83e03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae07e15be0652ca8faa23c6f907d83e03">&#9670;&#160;</a></span>IMB_CRC24_LTE_B</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC24_LTE_B</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc24_lte_b(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>LTE CRC24B function </p>

</div>
</div>
<a id="a075757c7f7b132a8f2ae13c18f36e2af" name="a075757c7f7b132a8f2ae13c18f36e2af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a075757c7f7b132a8f2ae13c18f36e2af">&#9670;&#160;</a></span>IMB_CRC32_ETHERNET_FCS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC32_ETHERNET_FCS</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc32_ethernet_fcs(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>CRC32 Ethernet FCS function </p>

</div>
</div>
<a id="a86753ed15fcd8aab177d276dd4ebf169" name="a86753ed15fcd8aab177d276dd4ebf169"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a86753ed15fcd8aab177d276dd4ebf169">&#9670;&#160;</a></span>IMB_CRC32_SCTP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC32_SCTP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc32_sctp(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>CRC32 SCTP function </p>

</div>
</div>
<a id="ab0a9f19127f3417cc78cfdf9091af33e" name="ab0a9f19127f3417cc78cfdf9091af33e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab0a9f19127f3417cc78cfdf9091af33e">&#9670;&#160;</a></span>IMB_CRC32_WIMAX_OFDMA_DATA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC32_WIMAX_OFDMA_DATA</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc32_wimax_ofdma_data(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>WIMAX OFDMA DATA CRC32 function (IEEE 802.16) </p>

</div>
</div>
<a id="ac7c45b0788456473390ca178275f9a34" name="ac7c45b0788456473390ca178275f9a34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7c45b0788456473390ca178275f9a34">&#9670;&#160;</a></span>IMB_CRC6_IUUP_HEADER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC6_IUUP_HEADER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc6_iuup_header(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>IUUP CRC6 function (3GPP TS 25.415) </p>

</div>
</div>
<a id="a23fe73b1f9d40348bc98f92f859df60b" name="a23fe73b1f9d40348bc98f92f859df60b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23fe73b1f9d40348bc98f92f859df60b">&#9670;&#160;</a></span>IMB_CRC7_FP_HEADER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC7_FP_HEADER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc7_fp_header(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Framing Protocol CRC7 function (3GPP TS 25.435, 3GPP TS 25.427) </p>

</div>
</div>
<a id="a0edd5fa8f3351ee214f7f2a267949f6d" name="a0edd5fa8f3351ee214f7f2a267949f6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0edd5fa8f3351ee214f7f2a267949f6d">&#9670;&#160;</a></span>IMB_CRC8_WIMAX_OFDMA_HCS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_CRC8_WIMAX_OFDMA_HCS</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(_mgr)-&gt;crc8_wimax_ofdma_hcs(_src, _len)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>WIMAX OFDMA HCS CRC8 function (IEEE 802.16) </p>

</div>
</div>
<a id="a95f4ece0b318cb36bdbe66089d9ef649" name="a95f4ece0b318cb36bdbe66089d9ef649"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95f4ece0b318cb36bdbe66089d9ef649">&#9670;&#160;</a></span>IMB_DES_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DES_BLOCK_SIZE&#160;&#160;&#160;8</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7d156b1b9d715299e08cca76e790e2b7" name="a7d156b1b9d715299e08cca76e790e2b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d156b1b9d715299e08cca76e790e2b7">&#9670;&#160;</a></span>IMB_DES_KEY_SCHED_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DES_KEY_SCHED_SIZE&#160;&#160;&#160;(16 * 8)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Algorithm constants 16 rounds x 8 bytes </p>

</div>
</div>
<a id="a6fbb59f06f60f1900b591735ad691ac6" name="a6fbb59f06f60f1900b591735ad691ac6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fbb59f06f60f1900b591735ad691ac6">&#9670;&#160;</a></span>IMB_DES_KEYSCHED</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DES_KEYSCHED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;des_key_sched((_exp_key), (_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate DES key schedule</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key</td><td>DES key schedule </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>input key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1beec59f9694a41c22b6b099263c070d" name="a1beec59f9694a41c22b6b099263c070d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1beec59f9694a41c22b6b099263c070d">&#9670;&#160;</a></span>IMB_DIM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DIM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">x</td><td>)</td>
          <td>&#160;&#160;&#160;(sizeof(x) / sizeof(x[0]))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a986643689f56109161597f67eb9d7b40" name="a986643689f56109161597f67eb9d7b40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a986643689f56109161597f67eb9d7b40">&#9670;&#160;</a></span>IMB_DLL_EXPORT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DLL_EXPORT</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Windows DLL export is done via DEF file </p>

</div>
</div>
<a id="a479e22216a6be5645af96c4b1433339e" name="a479e22216a6be5645af96c4b1433339e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a479e22216a6be5645af96c4b1433339e">&#9670;&#160;</a></span>IMB_DLL_LOCAL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DLL_LOCAL</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a74dca2bb8b0c87dec90f3b985c0266af" name="a74dca2bb8b0c87dec90f3b985c0266af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74dca2bb8b0c87dec90f3b985c0266af">&#9670;&#160;</a></span>IMB_DOCSIS_CRC32_MIN_ETH_PDU_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DOCSIS_CRC32_MIN_ETH_PDU_SIZE&#160;&#160;&#160;14</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Minimum Ethernet frame size to calculate CRC32 Source Address (6 bytes) + Destination Address (6 bytes) + Type/Len (2 bytes) </p>

</div>
</div>
<a id="a59c620471ea8c9577ed593127f82c758" name="a59c620471ea8c9577ed593127f82c758"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59c620471ea8c9577ed593127f82c758">&#9670;&#160;</a></span>IMB_DOCSIS_CRC32_TAG_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_DOCSIS_CRC32_TAG_SIZE&#160;&#160;&#160;4</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a19c147087d2ae918baa22f90fa9b3b05" name="a19c147087d2ae918baa22f90fa9b3b05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19c147087d2ae918baa22f90fa9b3b05">&#9670;&#160;</a></span>IMB_FEATURE_AESNI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AESNI&#160;&#160;&#160;(1ULL &lt;&lt; 1)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7af992d12b4f9a6e789384969a066056" name="a7af992d12b4f9a6e789384969a066056"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7af992d12b4f9a6e789384969a066056">&#9670;&#160;</a></span>IMB_FEATURE_AVX</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX&#160;&#160;&#160;(1ULL &lt;&lt; 5)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a225e2cd9c1445795fc62879eabad2530" name="a225e2cd9c1445795fc62879eabad2530"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a225e2cd9c1445795fc62879eabad2530">&#9670;&#160;</a></span>IMB_FEATURE_AVX2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX2&#160;&#160;&#160;(1ULL &lt;&lt; 6)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0134dfaffe12427a8f2182247c6f1f48" name="a0134dfaffe12427a8f2182247c6f1f48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0134dfaffe12427a8f2182247c6f1f48">&#9670;&#160;</a></span>IMB_FEATURE_AVX512_IFMA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512_IFMA&#160;&#160;&#160;(1ULL &lt;&lt; 17)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae6d6e3427c81b278d64f0189401c4964" name="ae6d6e3427c81b278d64f0189401c4964"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6d6e3427c81b278d64f0189401c4964">&#9670;&#160;</a></span>IMB_FEATURE_AVX512_SKX</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512_SKX</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        (<a class="code hl_define" href="intel-ipsec-mb_8h.html#ab673c08624d868ca0dd89e1a9ec28f00">IMB_FEATURE_AVX512F</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a8ca2c970faa0f62a3f4a6b6c18432bb1">IMB_FEATURE_AVX512DQ</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#abbdb390b80ff1a92f31a7a9adc9beeb9">IMB_FEATURE_AVX512CD</a> |                       \</div>
<div class="line">         <a class="code hl_define" href="intel-ipsec-mb_8h.html#a00caae81d425acb6b946bebb25ac267f">IMB_FEATURE_AVX512BW</a> | <a class="code hl_define" href="intel-ipsec-mb_8h.html#a803871900c08e2dc1b3f805ed4ecefd8">IMB_FEATURE_AVX512VL</a>)</div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a00caae81d425acb6b946bebb25ac267f"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a00caae81d425acb6b946bebb25ac267f">IMB_FEATURE_AVX512BW</a></div><div class="ttdeci">#define IMB_FEATURE_AVX512BW</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:914</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a803871900c08e2dc1b3f805ed4ecefd8"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a803871900c08e2dc1b3f805ed4ecefd8">IMB_FEATURE_AVX512VL</a></div><div class="ttdeci">#define IMB_FEATURE_AVX512VL</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:915</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_a8ca2c970faa0f62a3f4a6b6c18432bb1"><div class="ttname"><a href="intel-ipsec-mb_8h.html#a8ca2c970faa0f62a3f4a6b6c18432bb1">IMB_FEATURE_AVX512DQ</a></div><div class="ttdeci">#define IMB_FEATURE_AVX512DQ</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:912</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_ab673c08624d868ca0dd89e1a9ec28f00"><div class="ttname"><a href="intel-ipsec-mb_8h.html#ab673c08624d868ca0dd89e1a9ec28f00">IMB_FEATURE_AVX512F</a></div><div class="ttdeci">#define IMB_FEATURE_AVX512F</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:911</div></div>
<div class="ttc" id="aintel-ipsec-mb_8h_html_abbdb390b80ff1a92f31a7a9adc9beeb9"><div class="ttname"><a href="intel-ipsec-mb_8h.html#abbdb390b80ff1a92f31a7a9adc9beeb9">IMB_FEATURE_AVX512CD</a></div><div class="ttdeci">#define IMB_FEATURE_AVX512CD</div><div class="ttdef"><b>Definition</b> intel-ipsec-mb.h:913</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a00caae81d425acb6b946bebb25ac267f" name="a00caae81d425acb6b946bebb25ac267f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00caae81d425acb6b946bebb25ac267f">&#9670;&#160;</a></span>IMB_FEATURE_AVX512BW</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512BW&#160;&#160;&#160;(1ULL &lt;&lt; 10)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abbdb390b80ff1a92f31a7a9adc9beeb9" name="abbdb390b80ff1a92f31a7a9adc9beeb9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbdb390b80ff1a92f31a7a9adc9beeb9">&#9670;&#160;</a></span>IMB_FEATURE_AVX512CD</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512CD&#160;&#160;&#160;(1ULL &lt;&lt; 9)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8ca2c970faa0f62a3f4a6b6c18432bb1" name="a8ca2c970faa0f62a3f4a6b6c18432bb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ca2c970faa0f62a3f4a6b6c18432bb1">&#9670;&#160;</a></span>IMB_FEATURE_AVX512DQ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512DQ&#160;&#160;&#160;(1ULL &lt;&lt; 8)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab673c08624d868ca0dd89e1a9ec28f00" name="ab673c08624d868ca0dd89e1a9ec28f00"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab673c08624d868ca0dd89e1a9ec28f00">&#9670;&#160;</a></span>IMB_FEATURE_AVX512F</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512F&#160;&#160;&#160;(1ULL &lt;&lt; 7)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a803871900c08e2dc1b3f805ed4ecefd8" name="a803871900c08e2dc1b3f805ed4ecefd8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a803871900c08e2dc1b3f805ed4ecefd8">&#9670;&#160;</a></span>IMB_FEATURE_AVX512VL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX512VL&#160;&#160;&#160;(1ULL &lt;&lt; 11)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8a946f162ff5e363d04f8b44d2f48747" name="a8a946f162ff5e363d04f8b44d2f48747"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a946f162ff5e363d04f8b44d2f48747">&#9670;&#160;</a></span>IMB_FEATURE_AVX_IFMA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_AVX_IFMA&#160;&#160;&#160;(1ULL &lt;&lt; 21)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a557f3de4bcc0bd7e9bd90e5e1d1b9b09" name="a557f3de4bcc0bd7e9bd90e5e1d1b9b09"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a557f3de4bcc0bd7e9bd90e5e1d1b9b09">&#9670;&#160;</a></span>IMB_FEATURE_BMI2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_BMI2&#160;&#160;&#160;(1ULL &lt;&lt; 18)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5eef394935c651931b1cf560f31c841c" name="a5eef394935c651931b1cf560f31c841c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5eef394935c651931b1cf560f31c841c">&#9670;&#160;</a></span>IMB_FEATURE_CMOV</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_CMOV&#160;&#160;&#160;(1ULL &lt;&lt; 3)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa67ab4088ac2f8cadbe839101d276567" name="aa67ab4088ac2f8cadbe839101d276567"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa67ab4088ac2f8cadbe839101d276567">&#9670;&#160;</a></span>IMB_FEATURE_GFNI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_GFNI&#160;&#160;&#160;(1ULL &lt;&lt; 16)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a6bbaab5c0bc3aca1454b66bf2500150f" name="a6bbaab5c0bc3aca1454b66bf2500150f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6bbaab5c0bc3aca1454b66bf2500150f">&#9670;&#160;</a></span>IMB_FEATURE_HYBRID</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_HYBRID&#160;&#160;&#160;(1ULL &lt;&lt; 22) /* Hybrid core */</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a060ddf13837acb6d94bb927c8e73a74f" name="a060ddf13837acb6d94bb927c8e73a74f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a060ddf13837acb6d94bb927c8e73a74f">&#9670;&#160;</a></span>IMB_FEATURE_OSXSAVE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_OSXSAVE&#160;&#160;&#160;(1ULL &lt;&lt; 27) /* OS-enabled XSAVE */</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a1af54a4a862936a6793af2ff44163ba5" name="a1af54a4a862936a6793af2ff44163ba5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1af54a4a862936a6793af2ff44163ba5">&#9670;&#160;</a></span>IMB_FEATURE_PCLMULQDQ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_PCLMULQDQ&#160;&#160;&#160;(1ULL &lt;&lt; 2)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abd58fdbe1f1ef53cf509a0b37ba8aa4b" name="abd58fdbe1f1ef53cf509a0b37ba8aa4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd58fdbe1f1ef53cf509a0b37ba8aa4b">&#9670;&#160;</a></span>IMB_FEATURE_SAFE_DATA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SAFE_DATA&#160;&#160;&#160;(1ULL &lt;&lt; 14)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4e9506dc72ab4e6a2af463238ccb3080" name="a4e9506dc72ab4e6a2af463238ccb3080"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e9506dc72ab4e6a2af463238ccb3080">&#9670;&#160;</a></span>IMB_FEATURE_SAFE_PARAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SAFE_PARAM&#160;&#160;&#160;(1ULL &lt;&lt; 15)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8b4181547ded3ff17859d2632c468151" name="a8b4181547ded3ff17859d2632c468151"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b4181547ded3ff17859d2632c468151">&#9670;&#160;</a></span>IMB_FEATURE_SELF_TEST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SELF_TEST&#160;&#160;&#160;(1ULL &lt;&lt; 19) /* self-test feature present */</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a673b969c5f01579f6ca0a6b003cf1197" name="a673b969c5f01579f6ca0a6b003cf1197"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a673b969c5f01579f6ca0a6b003cf1197">&#9670;&#160;</a></span>IMB_FEATURE_SELF_TEST_PASS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SELF_TEST_PASS&#160;&#160;&#160;(1ULL &lt;&lt; 20) /* self-test passed */</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a3a5a4178425ed5ed19368bbcd6dec799" name="a3a5a4178425ed5ed19368bbcd6dec799"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a5a4178425ed5ed19368bbcd6dec799">&#9670;&#160;</a></span>IMB_FEATURE_SHA512NI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SHA512NI&#160;&#160;&#160;(1ULL &lt;&lt; 25)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="acb9c15eabfb9bafeb15a06886fa91e90" name="acb9c15eabfb9bafeb15a06886fa91e90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb9c15eabfb9bafeb15a06886fa91e90">&#9670;&#160;</a></span>IMB_FEATURE_SHANI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SHANI&#160;&#160;&#160;(1ULL &lt;&lt; 0)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Multi-buffer manager detected features</p><ul>
<li>if bit is set then hardware supports given extension</li>
<li>valid after call to init_mb_mgr() or <a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e" title="Allocates memory for multi-buffer manager instance.">alloc_mb_mgr()</a></li>
<li>some HW supported features can be disabled via IMB_FLAG_xxx (see above) </li>
</ul>

</div>
</div>
<a id="a42db17ecba592d31b3476e69eaa731c1" name="a42db17ecba592d31b3476e69eaa731c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42db17ecba592d31b3476e69eaa731c1">&#9670;&#160;</a></span>IMB_FEATURE_SM3NI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SM3NI&#160;&#160;&#160;(1ULL &lt;&lt; 23)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a893592aaa79eee3a42f62ac0fec31892" name="a893592aaa79eee3a42f62ac0fec31892"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a893592aaa79eee3a42f62ac0fec31892">&#9670;&#160;</a></span>IMB_FEATURE_SM4NI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SM4NI&#160;&#160;&#160;(1ULL &lt;&lt; 24)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abcc243fc505aca3eac6963eff25e9b99" name="abcc243fc505aca3eac6963eff25e9b99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abcc243fc505aca3eac6963eff25e9b99">&#9670;&#160;</a></span>IMB_FEATURE_SSE4_2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_SSE4_2&#160;&#160;&#160;(1ULL &lt;&lt; 4)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af4321e4e3c947f9b9fb7f204aaecf2c3" name="af4321e4e3c947f9b9fb7f204aaecf2c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4321e4e3c947f9b9fb7f204aaecf2c3">&#9670;&#160;</a></span>IMB_FEATURE_VAES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_VAES&#160;&#160;&#160;(1ULL &lt;&lt; 12)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a153d695ecd1af69a0d23385a50654614" name="a153d695ecd1af69a0d23385a50654614"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a153d695ecd1af69a0d23385a50654614">&#9670;&#160;</a></span>IMB_FEATURE_VPCLMULQDQ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_VPCLMULQDQ&#160;&#160;&#160;(1ULL &lt;&lt; 13)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af8159849ff1ccdc72382877cb596a55f" name="af8159849ff1ccdc72382877cb596a55f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8159849ff1ccdc72382877cb596a55f">&#9670;&#160;</a></span>IMB_FEATURE_XSAVE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FEATURE_XSAVE&#160;&#160;&#160;(1ULL &lt;&lt; 26)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad3faac9d03a87621ae02c10337b4edf8" name="ad3faac9d03a87621ae02c10337b4edf8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad3faac9d03a87621ae02c10337b4edf8">&#9670;&#160;</a></span>IMB_FLAG_GFNI_OFF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FLAG_GFNI_OFF&#160;&#160;&#160;(1ULL &lt;&lt; 1)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>disable use of GFNI extension </p>

</div>
</div>
<a id="a3d45fcff99a9ea952b4dd6ef70e36e0c" name="a3d45fcff99a9ea952b4dd6ef70e36e0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d45fcff99a9ea952b4dd6ef70e36e0c">&#9670;&#160;</a></span>IMB_FLAG_SHANI_OFF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FLAG_SHANI_OFF&#160;&#160;&#160;(1ULL &lt;&lt; 0)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>disable use of SHANI extension </p>

</div>
</div>
<a id="afff52a9aaa1c1875e7c905e2fb29fc43" name="afff52a9aaa1c1875e7c905e2fb29fc43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afff52a9aaa1c1875e7c905e2fb29fc43">&#9670;&#160;</a></span>IMB_FLUSH_BURST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FLUSH_BURST</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_max_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;flush_burst((_mgr), (_max_jobs), (_jobs)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Force up to <em>max_jobs</em> outstanding jobs to completion. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_max_jobs</td><td>Maximum number of jobs to flush </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_jobs</td><td>List of pointers to completed jobs</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="a4726e3683b3579b1e643134278386d72" name="a4726e3683b3579b1e643134278386d72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4726e3683b3579b1e643134278386d72">&#9670;&#160;</a></span>IMB_FLUSH_JOB</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_FLUSH_JOB</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;flush_job((_mgr)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Force processing until next job in queue is completed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no more jobs to process </dd></dl>

</div>
</div>
<a id="ae97681c203afbd818a39fb797613a232" name="ae97681c203afbd818a39fb797613a232"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae97681c203afbd818a39fb797613a232">&#9670;&#160;</a></span>IMB_GCM_128_KEY_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_128_KEY_LEN&#160;&#160;&#160;(16)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7201a0be67f1e6f3757169b0166dd47d" name="a7201a0be67f1e6f3757169b0166dd47d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7201a0be67f1e6f3757169b0166dd47d">&#9670;&#160;</a></span>IMB_GCM_192_KEY_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_192_KEY_LEN&#160;&#160;&#160;(24)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4c4c40ec87c2354832f5b182b22d2111" name="a4c4c40ec87c2354832f5b182b22d2111"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c4c40ec87c2354832f5b182b22d2111">&#9670;&#160;</a></span>IMB_GCM_256_KEY_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_256_KEY_LEN&#160;&#160;&#160;(32)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a59def6ed420a4ef91ce4a6562cc2c4d5" name="a59def6ed420a4ef91ce4a6562cc2c4d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59def6ed420a4ef91ce4a6562cc2c4d5">&#9670;&#160;</a></span>IMB_GCM_BLOCK_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_BLOCK_LEN&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0c6f54ab6663187fa401c766a981a41e" name="a0c6f54ab6663187fa401c766a981a41e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c6f54ab6663187fa401c766a981a41e">&#9670;&#160;</a></span>IMB_GCM_ENC_KEY_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_ENC_KEY_LEN&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a87884da318b3013893b725d047b53702" name="a87884da318b3013893b725d047b53702"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87884da318b3013893b725d047b53702">&#9670;&#160;</a></span>IMB_GCM_IV_DATA_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_IV_DATA_LEN&#160;&#160;&#160;(12)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>IV data is limited to 16 bytes as follows: 12 bytes is provided by an application - pre-counter block j0: 4 byte salt (from Security Association) concatenated with 8 byte Initialization Vector (from IPSec ESP Payload). 4 byte value 0x00000001 is padded automatically by the library - there is no need to add these 4 bytes on application side anymore. </p>

</div>
</div>
<a id="a73715b8c1ba918ce6d5c21749841b47b" name="a73715b8c1ba918ce6d5c21749841b47b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73715b8c1ba918ce6d5c21749841b47b">&#9670;&#160;</a></span>IMB_GCM_KEY_SETS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_KEY_SETS&#160;&#160;&#160;(15)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>exp key + 14 exp round keys </p>

</div>
</div>
<a id="a270311268c29ce07cffa688042b1855a" name="a270311268c29ce07cffa688042b1855a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a270311268c29ce07cffa688042b1855a">&#9670;&#160;</a></span>IMB_GCM_MAX_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GCM_MAX_LEN&#160;&#160;&#160;UINT64_C((((1ULL &lt;&lt; 39) - 256) / 8) - 1)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a18e5a7f85573f0006448deda41014117" name="a18e5a7f85573f0006448deda41014117"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18e5a7f85573f0006448deda41014117">&#9670;&#160;</a></span>IMB_GET_COMPLETED_JOB</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GET_COMPLETED_JOB</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;get_completed_job((_mgr)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next completed job. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if next job not complete </dd></dl>

</div>
</div>
<a id="a6029af3f88d1908dd11a8f3e9eb9fd70" name="a6029af3f88d1908dd11a8f3e9eb9fd70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6029af3f88d1908dd11a8f3e9eb9fd70">&#9670;&#160;</a></span>IMB_GET_NEXT_BURST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GET_NEXT_BURST</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;get_next_burst((_mgr), (_n_jobs), (_jobs)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next available burst (list of pointers to available <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Requested number of burst jobs </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_jobs</td><td>List of pointers to returned jobs</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of returned jobs. May be less than number of requested jobs if not enough space in queue. <a class="el" href="intel-ipsec-mb_8h.html#afff52a9aaa1c1875e7c905e2fb29fc43" title="Force up to max_jobs outstanding jobs to completion.">IMB_FLUSH_BURST()</a> can be used to free up space. </dd></dl>

</div>
</div>
<a id="a34b6006fc39dd4ea23d3fec49237d382" name="a34b6006fc39dd4ea23d3fec49237d382"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34b6006fc39dd4ea23d3fec49237d382">&#9670;&#160;</a></span>IMB_GET_NEXT_JOB</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GET_NEXT_JOB</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;get_next_job((_mgr)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next available job. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to next free <a class="el" href="structIMB__JOB.html">IMB_JOB</a> in the queue </dd></dl>

</div>
</div>
<a id="a477ad08a4c55e2c6458b7e86dae803ec" name="a477ad08a4c55e2c6458b7e86dae803ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a477ad08a4c55e2c6458b7e86dae803ec">&#9670;&#160;</a></span>IMB_GHASH</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GHASH</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tagl&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;ghash((_exp_key), (_src), (_len), (_tag), (_tagl)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a230f16784519d7e2b69de87871d35cb2" name="a230f16784519d7e2b69de87871d35cb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a230f16784519d7e2b69de87871d35cb2">&#9670;&#160;</a></span>IMB_GHASH_PRE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_GHASH_PRE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;ghash_pre((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a37996cede66ee8036b1b113af5f553ac" name="a37996cede66ee8036b1b113af5f553ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37996cede66ee8036b1b113af5f553ac">&#9670;&#160;</a></span>IMB_HEC_32</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_HEC_32</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;hec_32(_src))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>HEC (hybrid error coding) compute and header update for 32-bit XGEM header</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Pointer to XGEM header (4 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>32-bit XGEM header with updated HEC in BE format (ready for store) </dd></dl>

</div>
</div>
<a id="aa0b62ba2c9fb07a1ad3c8105ec4374a4" name="aa0b62ba2c9fb07a1ad3c8105ec4374a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0b62ba2c9fb07a1ad3c8105ec4374a4">&#9670;&#160;</a></span>IMB_HEC_64</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_HEC_64</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;hec_64(_src))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>HEC (hybrid error coding) compute and header update for 64-bit XGEM header</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Pointer to XGEM header (8 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>64-bit XGEM header with updated HEC in BE format (ready for store) </dd></dl>

</div>
</div>
<a id="aa31ca303e03fc548199f95e5335889e1" name="aa31ca303e03fc548199f95e5335889e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa31ca303e03fc548199f95e5335889e1">&#9670;&#160;</a></span>IMB_KASUMI_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_BLOCK_SIZE&#160;&#160;&#160;8</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a56bd44d01c91469b57efa36f360a83bf" name="a56bd44d01c91469b57efa36f360a83bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56bd44d01c91469b57efa36f360a83bf">&#9670;&#160;</a></span>IMB_KASUMI_DIGEST_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_DIGEST_SIZE&#160;&#160;&#160;4</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a45ac331e1f9241e53fc35a1f88dec6ce" name="a45ac331e1f9241e53fc35a1f88dec6ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45ac331e1f9241e53fc35a1f88dec6ce">&#9670;&#160;</a></span>IMB_KASUMI_F8_1_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F8_1_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;f8_1_buffer((_exp_key), (_iv), (_src), (_dst), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Kasumi byte-level f8 operation on a single buffer. </p>
<p>This function performs kasumi f8 operation on a single buffer. The key has already been scheduled with kasumi_init_f8_key_sched(). No extra bits are modified.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Initialization vector </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Output buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in BYTES</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="ae3befb703f7dec2c0695e61542f3212c" name="ae3befb703f7dec2c0695e61542f3212c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3befb703f7dec2c0695e61542f3212c">&#9670;&#160;</a></span>IMB_KASUMI_F8_1_BUFFER_BIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F8_1_BUFFER_BIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_offset&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;f8_1_buffer_bit((_exp_key), (_iv), (_src), (_dst), (_len), (_offset)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Kasumi bit-level f8 operation on a single buffer. </p>
<p>This function performs kasumi f8 operation on a single buffer. The key has already been scheduled with kasumi_init_f8_key_sched(). No extra bits are modified.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Initialization vector </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Output buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in BITS </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_offset</td><td>Offset in BITS from begin of input buffer</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000004">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="a884bfa72fc232c7e84043d0faee719ee" name="a884bfa72fc232c7e84043d0faee719ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a884bfa72fc232c7e84043d0faee719ee">&#9670;&#160;</a></span>IMB_KASUMI_F8_2_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F8_2_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len2&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;f8_2_buffer((_exp_key), (_iv1), (_iv2), (_src1), (_dst1), (_len1), (_src2),       \</div>
<div class="line">                             (_dst2), (_len2)))</div>
</div><!-- fragment -->
<p>Kasumi byte-level f8 operation in parallel on two buffers. </p>
<p>This function performs kasumi f8 operation on a two buffers. They will be processed with the same key, which has already been scheduled with kasumi_init_f8_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv1</td><td>Initialization vector for buffer in1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv2</td><td>Initialization vector for buffer in2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src1</td><td>Input buffer 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst1</td><td>Output buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len1</td><td>Length in BYTES of input buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src2</td><td>Input buffer 2 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst2</td><td>Output buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len2</td><td>Length in BYTES of input buffer 2</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000005">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="af35e87948218048e4bbad7162208fe41" name="af35e87948218048e4bbad7162208fe41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af35e87948218048e4bbad7162208fe41">&#9670;&#160;</a></span>IMB_KASUMI_F8_3_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F8_3_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;f8_3_buffer((_exp_key), (_iv1), (_iv2), (_iv3), (_src1), (_dst1), (_src2),        \</div>
<div class="line">                             (_dst2), (_src3), (_dst3), (_len)))</div>
</div><!-- fragment -->
<p>kasumi byte-level f8 operation in parallel on three buffers </p>
<p>This function performs kasumi f8 operation on a three buffers. They must all have the same length and they will be processed with the same key, which has already been scheduled with kasumi_init_f8_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv1</td><td>Initialization vector for buffer in1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv2</td><td>Initialization vector for buffer in2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv3</td><td>Initialization vector for buffer in3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src1</td><td>Input buffer 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst1</td><td>Output buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src2</td><td>Input buffer 2 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst2</td><td>Output buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src3</td><td>Input buffer 3 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst3</td><td>Output buffer 3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Common length in bytes for all buffers</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="a7ed6be7362e5ff7553fb4e7633bee76a" name="a7ed6be7362e5ff7553fb4e7633bee76a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ed6be7362e5ff7553fb4e7633bee76a">&#9670;&#160;</a></span>IMB_KASUMI_F8_4_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F8_4_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;f8_4_buffer((_exp_key), (_iv1), (_iv2), (_iv3), (_iv4), (_src1), (_dst1),         \</div>
<div class="line">                             (_src2), (_dst2), (_src3), (_dst3), (_src4), (_dst4), (_len)))</div>
</div><!-- fragment -->
<p>kasumi byte-level f8 operation in parallel on four buffers </p>
<p>This function performs kasumi f8 operation on four buffers. They must all have the same length and they will be processed with the same key, which has already been scheduled with kasumi_init_f8_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv1</td><td>Initialization vector for buffer in1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv2</td><td>Initialization vector for buffer in2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv3</td><td>Initialization vector for buffer in3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv4</td><td>Initialization vector for buffer in4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src1</td><td>Input buffer 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst1</td><td>Output buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src2</td><td>Input buffer 2 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst2</td><td>Output buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src3</td><td>Input buffer 3 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst3</td><td>Output buffer 3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src4</td><td>Input buffer 4 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst4</td><td>Output buffer 4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Common length in bytes for all buffers</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="a65b1afbadee23111046746a4d302bb0d" name="a65b1afbadee23111046746a4d302bb0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65b1afbadee23111046746a4d302bb0d">&#9670;&#160;</a></span>IMB_KASUMI_F8_N_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F8_N_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_count&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;f8_n_buffer((_exp_key), (_iv), (_src), (_dst), (_len), (_count)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Kasumi f8 operation on N buffers. </p>
<p>All input buffers can have different lengths and they will be processed with the same key, which has already been scheduled with kasumi_init_f8_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Array of IV values </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Array of input buffers </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Array of output buffers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Array of corresponding input buffer lengths in BITS </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_count</td><td>Number of input buffers</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000008">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a43c13bbdf83e2c75d6dd29d01dec4a1f" name="a43c13bbdf83e2c75d6dd29d01dec4a1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43c13bbdf83e2c75d6dd29d01dec4a1f">&#9670;&#160;</a></span>IMB_KASUMI_F9_1_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F9_1_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;f9_1_buffer((_exp_key), (_src), (_len), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Kasumi bit-level f9 operation on a single buffer. </p>
<p>The first QWORD of in represents the COUNT and FRESH, the last QWORD represents the DIRECTION and PADDING. (See 3GPP TS 35.201 v10.0 section 4)</p>
<p>The key has already been scheduled with kasumi_init_f9_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in BYTES of the data to be hashed </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Computed digest</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000009">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="a66dcf1985c046ef619141a6706159940" name="a66dcf1985c046ef619141a6706159940"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66dcf1985c046ef619141a6706159940">&#9670;&#160;</a></span>IMB_KASUMI_F9_1_BUFFER_USER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_F9_1_BUFFER_USER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dir&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;f9_1_buffer_user((_exp_key), (_iv), (_src), (_len), (_tag), (_dir)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Kasumi bit-level f9 operation on a single buffer. </p>
<p>The key has already been scheduled with kasumi_init_f9_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Initialization vector </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in BITS of the data to be hashed </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Computed digest </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_dir</td><td>Direction bit</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000010">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="aafcc540a047a6036adf4da0613ea5272" name="aafcc540a047a6036adf4da0613ea5272"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aafcc540a047a6036adf4da0613ea5272">&#9670;&#160;</a></span>IMB_KASUMI_INIT_F8_KEY_SCHED</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_INIT_F8_KEY_SCHED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;kasumi_init_f8_key_sched((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>KASUMI F8 key schedule init function.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>Confidentiality key (expected in LE format) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key</td><td>Key schedule context to be initialised </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 on success, -1 on failure </dd></dl>

</div>
</div>
<a id="a80a71ab95fd99c8427e171e45cebbd92" name="a80a71ab95fd99c8427e171e45cebbd92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a80a71ab95fd99c8427e171e45cebbd92">&#9670;&#160;</a></span>IMB_KASUMI_INIT_F9_KEY_SCHED</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_INIT_F9_KEY_SCHED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;kasumi_init_f9_key_sched((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>KASUMI F9 key schedule init function.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>Integrity key (expected in LE format) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key</td><td>Key schedule context to be initialised </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 on success, -1 on failure </dd></dl>

</div>
</div>
<a id="adf7e13e43c6bb30489d0e26f11e39440" name="adf7e13e43c6bb30489d0e26f11e39440"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf7e13e43c6bb30489d0e26f11e39440">&#9670;&#160;</a></span>IMB_KASUMI_IV_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_IV_SIZE&#160;&#160;&#160;8</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae3812840fbe6b9b5ea5e84a6b86a7ed3" name="ae3812840fbe6b9b5ea5e84a6b86a7ed3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3812840fbe6b9b5ea5e84a6b86a7ed3">&#9670;&#160;</a></span>IMB_KASUMI_KEY_SCHED_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_KEY_SCHED_SIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;kasumi_key_sched_size())</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function returns the size of the kasumi_key_sched_t, used to store the key schedule.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of kasumi_key_sched_t type success </dd></dl>

</div>
</div>
<a id="a46d59512e3a7254e54018181b7a31102" name="a46d59512e3a7254e54018181b7a31102"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46d59512e3a7254e54018181b7a31102">&#9670;&#160;</a></span>IMB_KASUMI_KEY_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_KASUMI_KEY_SIZE&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af9070daf9749490016e9b5106b338867" name="af9070daf9749490016e9b5106b338867"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9070daf9749490016e9b5106b338867">&#9670;&#160;</a></span>IMB_MAX_BURST_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_MAX_BURST_SIZE&#160;&#160;&#160;128</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab12d22470a68b5d3852c8dd972784d97" name="ab12d22470a68b5d3852c8dd972784d97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab12d22470a68b5d3852c8dd972784d97">&#9670;&#160;</a></span>IMB_MAX_JOBS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_MAX_JOBS&#160;&#160;&#160;(<a class="el" href="intel-ipsec-mb_8h.html#af9070daf9749490016e9b5106b338867">IMB_MAX_BURST_SIZE</a> * 2)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a41087ea6dce2e096ebb02a613600c2ed" name="a41087ea6dce2e096ebb02a613600c2ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41087ea6dce2e096ebb02a613600c2ed">&#9670;&#160;</a></span>IMB_MAX_TAG_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_MAX_TAG_LEN&#160;&#160;&#160;(64)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Maximum Authenticated Tag Length in bytes. </p>

</div>
</div>
<a id="a567100ef1c32f08b9e75e1fb378171a3" name="a567100ef1c32f08b9e75e1fb378171a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a567100ef1c32f08b9e75e1fb378171a3">&#9670;&#160;</a></span>IMB_MD5_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_MD5_BLOCK_SIZE&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a472528903f010fe2c365d1ff23565eaa" name="a472528903f010fe2c365d1ff23565eaa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a472528903f010fe2c365d1ff23565eaa">&#9670;&#160;</a></span>IMB_MD5_DIGEST_SIZE_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_MD5_DIGEST_SIZE_IN_BYTES&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a52b27293e2a19809c5f7d0f2afab97a2" name="a52b27293e2a19809c5f7d0f2afab97a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52b27293e2a19809c5f7d0f2afab97a2">&#9670;&#160;</a></span>IMB_MD5_ONE_BLOCK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_MD5_ONE_BLOCK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;md5_one_block((_src), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 64-byte data buffer with MD5.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (16 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a603f272890d272f0bbd467ee8c632452" name="a603f272890d272f0bbd467ee8c632452"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a603f272890d272f0bbd467ee8c632452">&#9670;&#160;</a></span>IMB_POLY1305_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_POLY1305_BLOCK_SIZE&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a712f6e7ecb2a16f8e1bc96b84d188365" name="a712f6e7ecb2a16f8e1bc96b84d188365"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a712f6e7ecb2a16f8e1bc96b84d188365">&#9670;&#160;</a></span>IMB_QUEUE_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_QUEUE_SIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;queue_size((_mgr)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get number of jobs queued to be processed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of jobs in the queue </dd></dl>

</div>
</div>
<a id="ad4c08f2bffbec28676efdb2e2719cccc" name="ad4c08f2bffbec28676efdb2e2719cccc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4c08f2bffbec28676efdb2e2719cccc">&#9670;&#160;</a></span>IMB_SELF_TEST_PHASE_CORRUPT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_PHASE_CORRUPT&#160;&#160;&#160;&quot;CORRUPT&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a6eed902612dcc2a48357d41eec6cbbe0" name="a6eed902612dcc2a48357d41eec6cbbe0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6eed902612dcc2a48357d41eec6cbbe0">&#9670;&#160;</a></span>IMB_SELF_TEST_PHASE_FAIL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_PHASE_FAIL&#160;&#160;&#160;&quot;FAIL&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8ffbfaff9522f0afbed27f0f18278bb2" name="a8ffbfaff9522f0afbed27f0f18278bb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ffbfaff9522f0afbed27f0f18278bb2">&#9670;&#160;</a></span>IMB_SELF_TEST_PHASE_PASS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_PHASE_PASS&#160;&#160;&#160;&quot;PASS&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a99801c5d8203aeaf6bf08e67e491f69b" name="a99801c5d8203aeaf6bf08e67e491f69b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99801c5d8203aeaf6bf08e67e491f69b">&#9670;&#160;</a></span>IMB_SELF_TEST_PHASE_START</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_PHASE_START&#160;&#160;&#160;&quot;START&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Self test defines </p>

</div>
</div>
<a id="a439b4d815e36cd31bbe7d230673343c3" name="a439b4d815e36cd31bbe7d230673343c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a439b4d815e36cd31bbe7d230673343c3">&#9670;&#160;</a></span>IMB_SELF_TEST_TYPE_KAT_AEAD</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_TYPE_KAT_AEAD&#160;&#160;&#160;&quot;KAT_AEAD&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a399d147b404c7ee60b254b34606e02db" name="a399d147b404c7ee60b254b34606e02db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a399d147b404c7ee60b254b34606e02db">&#9670;&#160;</a></span>IMB_SELF_TEST_TYPE_KAT_AUTH</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_TYPE_KAT_AUTH&#160;&#160;&#160;&quot;KAT_Auth&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a13bffffd1c1829e5d92815d90cb27534" name="a13bffffd1c1829e5d92815d90cb27534"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13bffffd1c1829e5d92815d90cb27534">&#9670;&#160;</a></span>IMB_SELF_TEST_TYPE_KAT_CIPHER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SELF_TEST_TYPE_KAT_CIPHER&#160;&#160;&#160;&quot;KAT_Cipher&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae61900d14cde2836621a1421141548a4" name="ae61900d14cde2836621a1421141548a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae61900d14cde2836621a1421141548a4">&#9670;&#160;</a></span>IMB_SHA1</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA1</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_length, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha1((_src), (_length), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate variable sized data with SHA1.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Data buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_length</td><td>Length of data in bytes for authentication. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (20 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af19fd9d6768e33720cab4ecd9aabad91" name="af19fd9d6768e33720cab4ecd9aabad91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af19fd9d6768e33720cab4ecd9aabad91">&#9670;&#160;</a></span>IMB_SHA1_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA1_BLOCK_SIZE&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>512 bits is 64 byte blocks </p>

</div>
</div>
<a id="a8c821d8cf5520f6f46e9b835eeeb2066" name="a8c821d8cf5520f6f46e9b835eeeb2066"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c821d8cf5520f6f46e9b835eeeb2066">&#9670;&#160;</a></span>IMB_SHA1_DIGEST_SIZE_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA1_DIGEST_SIZE_IN_BYTES&#160;&#160;&#160;20</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac2f9695b12c32c303faa7c93c1c24c9b" name="ac2f9695b12c32c303faa7c93c1c24c9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2f9695b12c32c303faa7c93c1c24c9b">&#9670;&#160;</a></span>IMB_SHA1_ONE_BLOCK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA1_ONE_BLOCK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha1_one_block((_src), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 64-byte data buffer with SHA1.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (20 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a542a40ced46bf97a678c6b44c325b360" name="a542a40ced46bf97a678c6b44c325b360"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a542a40ced46bf97a678c6b44c325b360">&#9670;&#160;</a></span>IMB_SHA224</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA224</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_length, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha224((_src), (_length), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate variable sized data with SHA224.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Data buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_length</td><td>Length of data in bytes for authentication. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (28 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a836641341e86b80f67716eabdf4a64c5" name="a836641341e86b80f67716eabdf4a64c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a836641341e86b80f67716eabdf4a64c5">&#9670;&#160;</a></span>IMB_SHA224_DIGEST_SIZE_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA224_DIGEST_SIZE_IN_BYTES&#160;&#160;&#160;28</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab1f7eb5e9bcd0c69a70dc76747f919f6" name="ab1f7eb5e9bcd0c69a70dc76747f919f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1f7eb5e9bcd0c69a70dc76747f919f6">&#9670;&#160;</a></span>IMB_SHA224_ONE_BLOCK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA224_ONE_BLOCK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha224_one_block((_src), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 64-byte data buffer with SHA224.</p>
<dl class="section note"><dt>Note</dt><dd>The output <em>tag</em> is 32 bytes long (not 28 bytes). This is needed for HMAC IPAD and OPAD computation where full 8 word digest is required.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (32 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a37338b9f91315e5de0c4f3d19859aa7b" name="a37338b9f91315e5de0c4f3d19859aa7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37338b9f91315e5de0c4f3d19859aa7b">&#9670;&#160;</a></span>IMB_SHA256</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA256</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_length, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha256((_src), (_length), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate variable sized data with SHA256.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Data buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_length</td><td>Length of data in bytes for authentication. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (32 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a4bc9eee15ba0ce09f545af8916292731" name="a4bc9eee15ba0ce09f545af8916292731"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bc9eee15ba0ce09f545af8916292731">&#9670;&#160;</a></span>IMB_SHA256_DIGEST_SIZE_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA256_DIGEST_SIZE_IN_BYTES&#160;&#160;&#160;32</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a6023b87b5d1c6dc7dc0547db540af997" name="a6023b87b5d1c6dc7dc0547db540af997"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6023b87b5d1c6dc7dc0547db540af997">&#9670;&#160;</a></span>IMB_SHA256_ONE_BLOCK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA256_ONE_BLOCK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha256_one_block((_src), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 64-byte data buffer with SHA256.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (32 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac8052b8b996f866f27b4d443bcda0d5f" name="ac8052b8b996f866f27b4d443bcda0d5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8052b8b996f866f27b4d443bcda0d5f">&#9670;&#160;</a></span>IMB_SHA384</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA384</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_length, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha384((_src), (_length), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate variable sized data with SHA384.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Data buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_length</td><td>Length of data in bytes for authentication. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (48 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2538a5e82141eb5a54f78660241e186c" name="a2538a5e82141eb5a54f78660241e186c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2538a5e82141eb5a54f78660241e186c">&#9670;&#160;</a></span>IMB_SHA384_DIGEST_SIZE_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA384_DIGEST_SIZE_IN_BYTES&#160;&#160;&#160;48</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a763d0cfb16263906e44f46696b16124b" name="a763d0cfb16263906e44f46696b16124b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a763d0cfb16263906e44f46696b16124b">&#9670;&#160;</a></span>IMB_SHA384_ONE_BLOCK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA384_ONE_BLOCK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha384_one_block((_src), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 128-byte data buffer with SHA384.</p>
<dl class="section note"><dt>Note</dt><dd>The output <em>tag</em> is 64 bytes long, not 48 bytes. This is needed for HMAC IPAD and OPAD computation where full 8 word digest is required.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>128-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (64 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac806d6b629633e801409d3e363d83f6c" name="ac806d6b629633e801409d3e363d83f6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac806d6b629633e801409d3e363d83f6c">&#9670;&#160;</a></span>IMB_SHA512</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA512</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_length, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha512((_src), (_length), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate variable sized data with SHA512.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Data buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_length</td><td>Length of data in bytes for authentication. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (20 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9efcf370f0db0b21f7cf4a3b72eec53e" name="a9efcf370f0db0b21f7cf4a3b72eec53e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9efcf370f0db0b21f7cf4a3b72eec53e">&#9670;&#160;</a></span>IMB_SHA512_DIGEST_SIZE_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA512_DIGEST_SIZE_IN_BYTES&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a71d0a529b355a434efeeda2e01870ba9" name="a71d0a529b355a434efeeda2e01870ba9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71d0a529b355a434efeeda2e01870ba9">&#9670;&#160;</a></span>IMB_SHA512_ONE_BLOCK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA512_ONE_BLOCK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;sha512_one_block((_src), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 128-byte data buffer with SHA512.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>128-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Digest output (64 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a7c912b7543122de6f05355fa4848eb83" name="a7c912b7543122de6f05355fa4848eb83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c912b7543122de6f05355fa4848eb83">&#9670;&#160;</a></span>IMB_SHA_224_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA_224_BLOCK_SIZE&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>512 bits is 64 byte blocks </p>

</div>
</div>
<a id="a7eed0159b050f8d78cddcc78b4b941ef" name="a7eed0159b050f8d78cddcc78b4b941ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7eed0159b050f8d78cddcc78b4b941ef">&#9670;&#160;</a></span>IMB_SHA_256_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA_256_BLOCK_SIZE&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>512 bits is 64 byte blocks </p>

</div>
</div>
<a id="a256cc0f9eaba38030ca3f7589e479855" name="a256cc0f9eaba38030ca3f7589e479855"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a256cc0f9eaba38030ca3f7589e479855">&#9670;&#160;</a></span>IMB_SHA_384_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA_384_BLOCK_SIZE&#160;&#160;&#160;128</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4141433b17ade98e14a585e0409cb62d" name="a4141433b17ade98e14a585e0409cb62d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4141433b17ade98e14a585e0409cb62d">&#9670;&#160;</a></span>IMB_SHA_512_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SHA_512_BLOCK_SIZE&#160;&#160;&#160;128</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a12f4db6d32e538899734a938a55cc9d3" name="a12f4db6d32e538899734a938a55cc9d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a12f4db6d32e538899734a938a55cc9d3">&#9670;&#160;</a></span>IMB_SM3_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SM3_BLOCK_SIZE&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a35ecd17fd04c0db20a1281ad7e497595" name="a35ecd17fd04c0db20a1281ad7e497595"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35ecd17fd04c0db20a1281ad7e497595">&#9670;&#160;</a></span>IMB_SM3_DIGEST_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SM3_DIGEST_SIZE&#160;&#160;&#160;32</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a9846bc9e4fb7c61de7c231e9fec5179d" name="a9846bc9e4fb7c61de7c231e9fec5179d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9846bc9e4fb7c61de7c231e9fec5179d">&#9670;&#160;</a></span>IMB_SM4_BLOCK_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SM4_BLOCK_SIZE&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adfc1e6216c0a6e42ba10d05c7614480c" name="adfc1e6216c0a6e42ba10d05c7614480c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfc1e6216c0a6e42ba10d05c7614480c">&#9670;&#160;</a></span>IMB_SM4_KEY_SCHEDULE_ROUNDS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SM4_KEY_SCHEDULE_ROUNDS&#160;&#160;&#160;32</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4c763b451aa0188d616d1cd127af8559" name="a4c763b451aa0188d616d1cd127af8559"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c763b451aa0188d616d1cd127af8559">&#9670;&#160;</a></span>IMB_SM4_KEYEXP</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SM4_KEYEXP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_enc_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_dec_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;sm4_keyexp((_key), (_exp_enc_key), (_exp_dec_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>SM4 key expansion</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>Input key (16 bytes) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_enc_key</td><td>Encrypt direction key schedule (128 bytes) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_dec_key</td><td>Decrypt direction key schedule (128 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5f5a1efb7da9f6b2436e95c5c89bd6ae" name="a5f5a1efb7da9f6b2436e95c5c89bd6ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f5a1efb7da9f6b2436e95c5c89bd6ae">&#9670;&#160;</a></span>IMB_SNOW3G_DIGEST_LEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_DIGEST_LEN&#160;&#160;&#160;4</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4bcfbb70da38433f8bcd3468779026f1" name="a4bcfbb70da38433f8bcd3468779026f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bcfbb70da38433f8bcd3468779026f1">&#9670;&#160;</a></span>IMB_SNOW3G_F8_1_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_1_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_1_buffer((_exp_key), (_iv), (_src), (_dst), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function performs snow3g f8 operation on a single buffer. The key has already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>iv[3] = count iv[2] = (bearer &lt;&lt; 27) | ((dir &amp; 0x1) &lt;&lt; 26) iv[1] = pIV[3] iv[0] = pIV[2] </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Output buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in bits of input buffer</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000012">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a5d7a9e694b932b1c198782e22dc1ead5" name="a5d7a9e694b932b1c198782e22dc1ead5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d7a9e694b932b1c198782e22dc1ead5">&#9670;&#160;</a></span>IMB_SNOW3G_F8_1_BUFFER_BIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_1_BUFFER_BIT</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_offset&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_1_buffer_bit((_exp_key), (_iv), (_src), (_dst), (_len), (_offset)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function performs snow3g f8 operation on a single buffer. The key has already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>iv[3] = count iv[2] = (bearer &lt;&lt; 27) | ((dir &amp; 0x1) &lt;&lt; 26) iv[1] = pIV[3] iv[0] = pIV[2] </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Output buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in bits of input buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_offset</td><td>Offset in input/output buffer (in bits)</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000011">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a51085837f0775feae26fe3885f7459b7" name="a51085837f0775feae26fe3885f7459b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51085837f0775feae26fe3885f7459b7">&#9670;&#160;</a></span>IMB_SNOW3G_F8_2_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_2_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len2&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;snow3g_f8_2_buffer((_exp_key), (_iv1), (_iv2), (_src1), (_dst1), (_len1),         \</div>
<div class="line">                                    (_src2), (_dst2), (_len2)))</div>
</div><!-- fragment --><p>This function performs snow3g f8 operation on two buffers. They will be processed with the same key, which has already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv1</td><td>IV to use for buffer pBufferIn1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv2</td><td>IV to use for buffer pBufferIn2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src1</td><td>Input buffer 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst1</td><td>Output buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len1</td><td>Length in bytes of input buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src2</td><td>Input buffer 2 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst2</td><td>Output buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len2</td><td>Length in bytes of input buffer 2</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000013">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a79b873457a74ad6c50e689709d79a0fb" name="a79b873457a74ad6c50e689709d79a0fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79b873457a74ad6c50e689709d79a0fb">&#9670;&#160;</a></span>IMB_SNOW3G_F8_4_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_4_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len4&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;snow3g_f8_4_buffer((_exp_key), (_iv1), (_iv2), (_iv3), (_iv4), (_src1), (_dst1),  \</div>
<div class="line">                                    (_len1), (_src2), (_dst2), (_len2), (_src3), (_dst3), (_len3), \</div>
<div class="line">                                    (_src4), (_dst4), (_len4)))</div>
</div><!-- fragment --><p>This function performs snow3g f8 operation on four buffers. They will be processed with the same key, which has already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv1</td><td>IV to use for buffer pBufferIn1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv2</td><td>IV to use for buffer pBufferIn2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv3</td><td>IV to use for buffer pBufferIn3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv4</td><td>IV to use for buffer pBufferIn4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src1</td><td>Input buffer 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst1</td><td>Output buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len1</td><td>Length in bytes of input buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src2</td><td>Input buffer 2 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst2</td><td>Output buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len2</td><td>Length in bytes of input buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src3</td><td>Input buffer 3 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst3</td><td>Output buffer 3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len3</td><td>Length in bytes of input buffer 3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src4</td><td>Input buffer 4 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst4</td><td>Output buffer 4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len4</td><td>Length in bytes of input buffer 4</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000014">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a8536e68d053999123eb104762ef51932" name="a8536e68d053999123eb104762ef51932"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8536e68d053999123eb104762ef51932">&#9670;&#160;</a></span>IMB_SNOW3G_F8_8_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_8_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv5, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv6, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv7, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv8, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len3, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len4, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src5, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst5, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len5, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src6, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst6, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len6, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src7, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst7, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len7, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src8, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst8, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len8&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;snow3g_f8_8_buffer((_exp_key), (_iv1), (_iv2), (_iv3), (_iv4), (_iv5), (_iv6),    \</div>
<div class="line">                                    (_iv7), (_iv8), (_src1), (_dst1), (_len1), (_src2), (_dst2),   \</div>
<div class="line">                                    (_len2), (_src3), (_dst3), (_len3), (_src4), (_dst4), (_len4), \</div>
<div class="line">                                    (_src5), (_dst5), (_len5), (_src6), (_dst6), (_len6), (_src7), \</div>
<div class="line">                                    (_dst7), (_len7), (_src8), (_dst8), (_len8)))</div>
</div><!-- fragment --><p>This function performs snow3g f8 operation on eight buffers. They will be processed with the same key, which has already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv1</td><td>IV to use for buffer pBufferIn1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv2</td><td>IV to use for buffer pBufferIn2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv3</td><td>IV to use for buffer pBufferIn3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv4</td><td>IV to use for buffer pBufferIn4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv5</td><td>IV to use for buffer pBufferIn5 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv6</td><td>IV to use for buffer pBufferIn6 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv7</td><td>IV to use for buffer pBufferIn7 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv8</td><td>IV to use for buffer pBufferIn8 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src1</td><td>Input buffer 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst1</td><td>Output buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len1</td><td>Length in bytes of input buffer 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src2</td><td>Input buffer 2 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst2</td><td>Output buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len2</td><td>Length in bytes of input buffer 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src3</td><td>Input buffer 3 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst3</td><td>Output buffer 3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len3</td><td>Length in bytes of input buffer 3 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src4</td><td>Input buffer 4 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst4</td><td>Output buffer 4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len4</td><td>Length in bytes of input buffer 4 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src5</td><td>Input buffer 5 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst5</td><td>Output buffer 5 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len5</td><td>Length in bytes of input buffer 5 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src6</td><td>Input buffer 6 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst6</td><td>Output buffer 6 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len6</td><td>Length in bytes of input buffer 6 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src7</td><td>Input buffer 7 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst7</td><td>Output buffer 7 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len7</td><td>Length in bytes of input buffer 7 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src8</td><td>Input buffer 8 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst8</td><td>Output buffer 8 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len8</td><td>Length in bytes of input buffer 8</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000015">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="aca8fb428a3b291950cd9dc6277ad801a" name="aca8fb428a3b291950cd9dc6277ad801a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca8fb428a3b291950cd9dc6277ad801a">&#9670;&#160;</a></span>IMB_SNOW3G_F8_8_BUFFER_MULTIKEY</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_8_BUFFER_MULTIKEY</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_8_buffer_multikey((_exp_key), (_iv), (_src), (_dst), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function performs snow3g f8 operation on eight buffers. They will be processed with individual keys, which have already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Array of 8 Contexts, where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Array of 8 IV values </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Array of 8 input buffers </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Array of 8 output buffers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Array of 8 corresponding input buffer lengths</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000016">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a4538b34eaf3a3d402041ada1e8d03e2c" name="a4538b34eaf3a3d402041ada1e8d03e2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4538b34eaf3a3d402041ada1e8d03e2c">&#9670;&#160;</a></span>IMB_SNOW3G_F8_N_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_N_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_count&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_n_buffer((_exp_key), (_iv), (_src), (_dst), (_len), (_count)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function performs snow3g f8 operation in parallel on N buffers. All input buffers can have different lengths and they will be processed with the same key, which has already been scheduled with snow3g_init_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Array of IV values </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Array of input buffers </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Array of output buffers - out[0] set to NULL on failure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Array of corresponding input buffer lengths </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_count</td><td>Number of input buffers</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000017">Deprecated:</a></b></dt><dd>Please use the job API instead.</dd></dl>

</div>
</div>
<a id="a4a5ae1b04c7aee099c2f8fcbd488c38c" name="a4a5ae1b04c7aee099c2f8fcbd488c38c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a5ae1b04c7aee099c2f8fcbd488c38c">&#9670;&#160;</a></span>IMB_SNOW3G_F8_N_BUFFER_MULTIKEY</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F8_N_BUFFER_MULTIKEY</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_count&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f8_n_buffer_multikey((_exp_key), (_iv), (_src), (_dst), (_len), (_count)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function performs snow3g f8 operation in parallel on N buffers. All input buffers can have different lengths. Confidentiallity keys can vary, schedules with snow3g_init_key_sched_multi().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Array of Contexts, where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>Array of IV values </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Array of input buffers </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_dst</td><td>Array of output buffers<ul>
<li>out[0] set to NULL on failure </li>
</ul>
</td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Array of corresponding input buffer lengths </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_count</td><td>Number of input buffers</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000018">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="aa6a951033156fc06c25afb4f79de8851" name="aa6a951033156fc06c25afb4f79de8851"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa6a951033156fc06c25afb4f79de8851">&#9670;&#160;</a></span>IMB_SNOW3G_F9_1_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_F9_1_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_f9_1_buffer((_exp_key), (_iv), (_src), (_len), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function performs a snow3g f9 operation on a single block of data. The key has already been scheduled with snow3g_init_f8_key_sched().</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_exp_key</td><td>Context where the scheduled keys are stored </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_iv</td><td>iv[3] = _BSWAP32(fresh^(dir&lt;&lt;15)) iv[2] = _BSWAP32(count^(dir&lt;&lt;31)) iv[1] = _BSWAP32(fresh) iv[0] = _BSWAP32(count)</td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_src</td><td>Input buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_len</td><td>Length in bits of the data to be hashed </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_tag</td><td>Computed digest</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000019">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="ac5b5ff1cc9cf44ea8587a7d054b7459d" name="ac5b5ff1cc9cf44ea8587a7d054b7459d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5b5ff1cc9cf44ea8587a7d054b7459d">&#9670;&#160;</a></span>IMB_SNOW3G_INIT_KEY_SCHED</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_INIT_KEY_SCHED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_exp_key&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;snow3g_init_key_sched((_key), (_exp_key)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Snow3g key schedule init function.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key</td><td>Confidentiality/Integrity key (expected in LE format) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">_exp_key</td><td>Key schedule context to be initialised </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 on success </dd>
<dd>
-1 on error </dd></dl>

</div>
</div>
<a id="a5d9cbb917f8117631939faa3d04c912d" name="a5d9cbb917f8117631939faa3d04c912d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d9cbb917f8117631939faa3d04c912d">&#9670;&#160;</a></span>IMB_SNOW3G_IV_LEN_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_IV_LEN_IN_BYTES&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a1ddd766994cb5d0b8e9ef5cd580cdcd2" name="a1ddd766994cb5d0b8e9ef5cd580cdcd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ddd766994cb5d0b8e9ef5cd580cdcd2">&#9670;&#160;</a></span>IMB_SNOW3G_KEY_SCHED_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SNOW3G_KEY_SCHED_SIZE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;snow3g_key_sched_size())</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function returns the size of the snow3g_key_schedule_t, used to store the key schedule.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of snow3g_key_schedule_t type </dd></dl>

</div>
</div>
<a id="add938488021e958fd1942cffff1459e9" name="add938488021e958fd1942cffff1459e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add938488021e958fd1942cffff1459e9">&#9670;&#160;</a></span>IMB_SUBMIT_AEAD_BURST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_AEAD_BURST</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_cipher, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dir, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key_size&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;submit_aead_burst((_mgr), (_jobs), (_n_jobs), (_cipher), (_dir), (_key_size)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Submit multiple cipher jobs to be processed synchronously after validating.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>Pointer to array of <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to process </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_cipher</td><td>Cipher algorithm of type <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_dir</td><td>Cipher direction of type <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key_size</td><td>Key size in bytes of type <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="af72a93d3debe41e175ebd1b9a604205f" name="af72a93d3debe41e175ebd1b9a604205f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af72a93d3debe41e175ebd1b9a604205f">&#9670;&#160;</a></span>IMB_SUBMIT_AEAD_BURST_NOCHECK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_AEAD_BURST_NOCHECK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_cipher, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dir, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key_size&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;submit_aead_burst_nocheck((_mgr), (_jobs), (_n_jobs), (_cipher), (_dir),          \</div>
<div class="line">                                           (_key_size)))</div>
</div><!-- fragment --><p>Submit multiple cipher jobs to be processed synchronously without validating.</p>
<p>This is more performant but less secure than <a class="el" href="intel-ipsec-mb_8h.html#add938488021e958fd1942cffff1459e9">IMB_SUBMIT_AEAD_BURST()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>Pointer to array of <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to process </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_cipher</td><td>Cipher algorithm of type <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_dir</td><td>Cipher direction of type <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key_size</td><td>Key size in bytes of type <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="aabfad78b032b6b160e3ba51477132524" name="aabfad78b032b6b160e3ba51477132524"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aabfad78b032b6b160e3ba51477132524">&#9670;&#160;</a></span>IMB_SUBMIT_BURST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_BURST</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;((_mgr)-&gt;submit_burst((_mgr), (_n_jobs), (_jobs)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit multiple jobs to be processed after validating. </p>
<p>Prior to submission, <em>_jobs</em> need to be initialized with correct crypto job parameters and followed with a call to <a class="el" href="intel-ipsec-mb_8h.html#ada304337e78ef5a462c97c1f8151ef67" title="Sets up suite_id and session_id fields for selected cipher suite in provided job structure.">imb_set_session()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to submit for processing </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>In: List of pointers to jobs for submission Out: List of pointers to completed jobs </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="intel-ipsec-mb_8h.html#ada304337e78ef5a462c97c1f8151ef67" title="Sets up suite_id and session_id fields for selected cipher suite in provided job structure.">imb_set_session()</a></dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs or zero on error. If zero, <a class="el" href="intel-ipsec-mb_8h.html#a79f60b2bffbe91dac3e4f8b486e7ab10" title="API to get error status.">imb_get_errno()</a> can be used to check for potential error conditions and _jobs[0] contains pointer to invalid job </dd></dl>

</div>
</div>
<a id="aa06f0e18794d4a95d16e61dfb1af70c4" name="aa06f0e18794d4a95d16e61dfb1af70c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa06f0e18794d4a95d16e61dfb1af70c4">&#9670;&#160;</a></span>IMB_SUBMIT_BURST_NOCHECK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_BURST_NOCHECK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;submit_burst_nocheck((_mgr), (_n_jobs), (_jobs)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit multiple jobs to be processed without validating. </p>
<p>Prior to submission <em>_jobs</em> need to be initialized with correct crypto job parameters and followed with call to <a class="el" href="intel-ipsec-mb_8h.html#ada304337e78ef5a462c97c1f8151ef67" title="Sets up suite_id and session_id fields for selected cipher suite in provided job structure.">imb_set_session()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to submit for processing </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>In: List of pointers to jobs for submission Out: List of pointers to completed jobs </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="intel-ipsec-mb_8h.html#ada304337e78ef5a462c97c1f8151ef67" title="Sets up suite_id and session_id fields for selected cipher suite in provided job structure.">imb_set_session()</a></dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs or zero on error </dd></dl>

</div>
</div>
<a id="ae487720f5112a3ecec659ab4aeada77e" name="ae487720f5112a3ecec659ab4aeada77e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae487720f5112a3ecec659ab4aeada77e">&#9670;&#160;</a></span>IMB_SUBMIT_CIPHER_BURST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_CIPHER_BURST</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_cipher, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dir, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key_size&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;submit_cipher_burst((_mgr), (_jobs), (_n_jobs), (_cipher), (_dir), (_key_size)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Submit multiple cipher jobs to be processed synchronously after validating.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>Pointer to array of <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to process </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_cipher</td><td>Cipher algorithm of type <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_dir</td><td>Cipher direction of type <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key_size</td><td>Key size in bytes of type <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="af819e81f584b3b56e0201a7174b3c0eb" name="af819e81f584b3b56e0201a7174b3c0eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af819e81f584b3b56e0201a7174b3c0eb">&#9670;&#160;</a></span>IMB_SUBMIT_CIPHER_BURST_NOCHECK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_CIPHER_BURST_NOCHECK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_cipher, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dir, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key_size&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">        ((_mgr)-&gt;submit_cipher_burst_nocheck((_mgr), (_jobs), (_n_jobs), (_cipher), (_dir),        \</div>
<div class="line">                                             (_key_size)))</div>
</div><!-- fragment --><p>Submit multiple cipher jobs to be processed synchronously without validating.</p>
<p>This is more performant but less secure than <a class="el" href="intel-ipsec-mb_8h.html#ae487720f5112a3ecec659ab4aeada77e">IMB_SUBMIT_CIPHER_BURST()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>Pointer to array of <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to process </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_cipher</td><td>Cipher algorithm of type <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_dir</td><td>Cipher direction of type <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_key_size</td><td>Key size in bytes of type <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="a3702b37004e38dd27a9b8a008a0c48ed" name="a3702b37004e38dd27a9b8a008a0c48ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3702b37004e38dd27a9b8a008a0c48ed">&#9670;&#160;</a></span>IMB_SUBMIT_HASH_BURST</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_HASH_BURST</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_hash&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;submit_hash_burst((_mgr), (_jobs), (_n_jobs), (_hash)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Submit multiple hash jobs to be processed synchronously after validating.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>Pointer to array of <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to process </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_hash</td><td>Hash algorithm of type <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="afd6b80655a6129fe063d2ffb391e3015" name="afd6b80655a6129fe063d2ffb391e3015"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd6b80655a6129fe063d2ffb391e3015">&#9670;&#160;</a></span>IMB_SUBMIT_HASH_BURST_NOCHECK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_HASH_BURST_NOCHECK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_n_jobs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_hash&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;submit_hash_burst_nocheck((_mgr), (_jobs), (_n_jobs), (_hash)))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Submit multiple hash jobs to be processed synchronously without validating.</p>
<p>This is more performant but less secure than <a class="el" href="intel-ipsec-mb_8h.html#a3702b37004e38dd27a9b8a008a0c48ed">IMB_SUBMIT_HASH_BURST()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_jobs</td><td>Pointer to array of <a class="el" href="structIMB__JOB.html">IMB_JOB</a> structures </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_n_jobs</td><td>Number of jobs to process </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_hash</td><td>Hash algorithm of type <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of completed jobs </dd></dl>

</div>
</div>
<a id="a3602a4ccaf1da4bf6787169370cef04f" name="a3602a4ccaf1da4bf6787169370cef04f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3602a4ccaf1da4bf6787169370cef04f">&#9670;&#160;</a></span>IMB_SUBMIT_JOB</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_JOB</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;submit_job((_mgr)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing after validating. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed If NULL, <a class="el" href="intel-ipsec-mb_8h.html#a79f60b2bffbe91dac3e4f8b486e7ab10" title="API to get error status.">imb_get_errno()</a> can be used to check for potential error conditions </dd></dl>

</div>
</div>
<a id="af23c64e466272c5ae90fcf78fbcd0c3d" name="af23c64e466272c5ae90fcf78fbcd0c3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af23c64e466272c5ae90fcf78fbcd0c3d">&#9670;&#160;</a></span>IMB_SUBMIT_JOB_NOCHECK</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_SUBMIT_JOB_NOCHECK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr</td><td>)</td>
          <td>&#160;&#160;&#160;((_mgr)-&gt;submit_job_nocheck((_mgr)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing without validating. </p>
<p>This is more performant but less secure than submit_job_xxx()</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed </dd></dl>

</div>
</div>
<a id="ad9bcb21181d1e07b4f66d8bf0514c1a3" name="ad9bcb21181d1e07b4f66d8bf0514c1a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9bcb21181d1e07b4f66d8bf0514c1a3">&#9670;&#160;</a></span>IMB_VERSION</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_VERSION</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">a, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">b, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">c&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(((a) &lt;&lt; 16) + ((b) &lt;&lt; 8) + (c))</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Macro to translate version number </p>

</div>
</div>
<a id="a415abfc6067c0b1663a508993a4eb0d4" name="a415abfc6067c0b1663a508993a4eb0d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a415abfc6067c0b1663a508993a4eb0d4">&#9670;&#160;</a></span>IMB_VERSION_NUM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_VERSION_NUM&#160;&#160;&#160;0x20000</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a874972638400dafdb542319d61bfbfbc" name="a874972638400dafdb542319d61bfbfbc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a874972638400dafdb542319d61bfbfbc">&#9670;&#160;</a></span>IMB_VERSION_STR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_VERSION_STR&#160;&#160;&#160;&quot;2.0.0&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Library version </p>

</div>
</div>
<a id="a2b1faea7079fa3ddb2cabeb41aeb2a0a" name="a2b1faea7079fa3ddb2cabeb41aeb2a0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b1faea7079fa3ddb2cabeb41aeb2a0a">&#9670;&#160;</a></span>IMB_ZUC256_DIGEST_LEN_IN_BYTES_MAX</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC256_DIGEST_LEN_IN_BYTES_MAX&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a3dc24506ef16ad090414608c762b3d3c" name="a3dc24506ef16ad090414608c762b3d3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3dc24506ef16ad090414608c762b3d3c">&#9670;&#160;</a></span>IMB_ZUC256_DIGEST_LEN_IN_BYTES_MIN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC256_DIGEST_LEN_IN_BYTES_MIN&#160;&#160;&#160;4</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5ab93cc1831b961f3d04ff913f63b832" name="a5ab93cc1831b961f3d04ff913f63b832"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ab93cc1831b961f3d04ff913f63b832">&#9670;&#160;</a></span>IMB_ZUC256_IV_LEN_IN_BYTES_MAX</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC256_IV_LEN_IN_BYTES_MAX&#160;&#160;&#160;25</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a18e1733291bb917240ef117f52c6aa6c" name="a18e1733291bb917240ef117f52c6aa6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18e1733291bb917240ef117f52c6aa6c">&#9670;&#160;</a></span>IMB_ZUC256_IV_LEN_IN_BYTES_MIN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC256_IV_LEN_IN_BYTES_MIN&#160;&#160;&#160;23</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a35d04f4dc107531e37fcab1fd5efbf93" name="a35d04f4dc107531e37fcab1fd5efbf93"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35d04f4dc107531e37fcab1fd5efbf93">&#9670;&#160;</a></span>IMB_ZUC256_KEY_LEN_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC256_KEY_LEN_IN_BYTES&#160;&#160;&#160;32</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adbb9f3bfdc1d416c20a579eb3a8b0b8f" name="adbb9f3bfdc1d416c20a579eb3a8b0b8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adbb9f3bfdc1d416c20a579eb3a8b0b8f">&#9670;&#160;</a></span>IMB_ZUC_DIGEST_LEN_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_DIGEST_LEN_IN_BYTES&#160;&#160;&#160;4</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adb23f957dde69fb3bb4c6798d1a69da4" name="adb23f957dde69fb3bb4c6798d1a69da4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb23f957dde69fb3bb4c6798d1a69da4">&#9670;&#160;</a></span>IMB_ZUC_EEA3_1_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_EEA3_1_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;eea3_1_buffer((_key), (_iv), (_src), (_dst), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZUC EEA3 Confidentiality functions. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramname">_key</td><td>Pointer to key </td></tr>
    <tr><td class="paramname">_iv</td><td>Pointer to 16-byte IV </td></tr>
    <tr><td class="paramname">_src</td><td>Pointer to Plaintext/Ciphertext input. </td></tr>
    <tr><td class="paramname">_dst</td><td>Pointer to Ciphertext/Plaintext output. </td></tr>
    <tr><td class="paramname">_len</td><td>Length of input data in bytes.</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a57445dd863838d04cf44f4d79c4dbcaf" name="a57445dd863838d04cf44f4d79c4dbcaf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57445dd863838d04cf44f4d79c4dbcaf">&#9670;&#160;</a></span>IMB_ZUC_EEA3_4_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_EEA3_4_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;eea3_4_buffer((_key), (_iv), (_src), (_dst), (_len)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZUC EEA3 Confidentiality functions.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramname">_key</td><td>Pointer to key </td></tr>
    <tr><td class="paramname">_iv</td><td>Pointer to 16-byte IV </td></tr>
    <tr><td class="paramname">_src</td><td>Pointer to Plaintext/Ciphertext input. </td></tr>
    <tr><td class="paramname">_dst</td><td>Pointer to Ciphertext/Plaintext output. </td></tr>
    <tr><td class="paramname">_len</td><td>Length of input data in bytes.</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="a6382e3185f31e61f995ab90110c52991" name="a6382e3185f31e61f995ab90110c52991"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6382e3185f31e61f995ab90110c52991">&#9670;&#160;</a></span>IMB_ZUC_EEA3_N_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_EEA3_N_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_count&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;eea3_n_buffer((_key), (_iv), (_src), (_dst), (_len), (_count)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZUC EEA3 Confidentiality functions.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramname">_key</td><td>Pointer to key </td></tr>
    <tr><td class="paramname">_iv</td><td>Pointer to 16-byte IV </td></tr>
    <tr><td class="paramname">_src</td><td>Pointer to Plaintext/Ciphertext input. </td></tr>
    <tr><td class="paramname">_dst</td><td>Pointer to Ciphertext/Plaintext output. </td></tr>
    <tr><td class="paramname">_len</td><td>Length of input data in bytes.</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="ac789fe54f3a8f92144831a67b14501d4" name="ac789fe54f3a8f92144831a67b14501d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac789fe54f3a8f92144831a67b14501d4">&#9670;&#160;</a></span>IMB_ZUC_EIA3_1_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_EIA3_1_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;eia3_1_buffer((_key), (_iv), (_src), (_len), (_tag)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZUC EIA3 Integrity functions. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramname">_key</td><td>Pointer to key </td></tr>
    <tr><td class="paramname">_iv</td><td>Pointer to 16-byte IV </td></tr>
    <tr><td class="paramname">_src</td><td>Pointer to Plaintext/Ciphertext input. </td></tr>
    <tr><td class="paramname">_len</td><td>Length of input data in bits. </td></tr>
    <tr><td class="paramname">_tag</td><td>Pointer to Authenticated Tag output (4 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="ae840d62f1246c0c4270c3319ef356d3c" name="ae840d62f1246c0c4270c3319ef356d3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae840d62f1246c0c4270c3319ef356d3c">&#9670;&#160;</a></span>IMB_ZUC_EIA3_N_BUFFER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_EIA3_N_BUFFER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_mgr, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_iv, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_src, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_len, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_tag, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_count&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;        ((_mgr)-&gt;eia3_n_buffer((_key), (_iv), (_src), (_len), (_tag), (_count)))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZUC EIA3 Integrity functions.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">_mgr</td><td>Pointer to multi-buffer structure </td></tr>
    <tr><td class="paramname">_key</td><td>Pointer to key </td></tr>
    <tr><td class="paramname">_iv</td><td>Pointer to 16-byte IV </td></tr>
    <tr><td class="paramname">_src</td><td>Pointer to Plaintext/Ciphertext input. </td></tr>
    <tr><td class="paramname">_len</td><td>Length of input data in bits. </td></tr>
    <tr><td class="paramname">_tag</td><td>Pointer to Authenticated Tag output (4 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>Please use the job API instead. </dd></dl>

</div>
</div>
<a id="aaacb0749fd75d1133414685b5694652d" name="aaacb0749fd75d1133414685b5694652d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaacb0749fd75d1133414685b5694652d">&#9670;&#160;</a></span>IMB_ZUC_IV_LEN_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_IV_LEN_IN_BYTES&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a053b0646f055d7ee3be974bb2bfe534b" name="a053b0646f055d7ee3be974bb2bfe534b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a053b0646f055d7ee3be974bb2bfe534b">&#9670;&#160;</a></span>IMB_ZUC_KEY_LEN_IN_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IMB_ZUC_KEY_LEN_IN_BYTES&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a071e04977525b67c8d1accc60937eb67" name="a071e04977525b67c8d1accc60937eb67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a071e04977525b67c8d1accc60937eb67">&#9670;&#160;</a></span>KASUMI_KEY_SCHEDULE_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define KASUMI_KEY_SCHEDULE_SIZE&#160;&#160;&#160;64</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="aeb837fda81cdf56ffcfa4e68b5877a35" name="aeb837fda81cdf56ffcfa4e68b5877a35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb837fda81cdf56ffcfa4e68b5877a35">&#9670;&#160;</a></span>aes_cfb_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_cfb_t) (void *, const void *, const void *, const void *, uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad907e0caa52fcb257275464179620643" name="ad907e0caa52fcb257275464179620643"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad907e0caa52fcb257275464179620643">&#9670;&#160;</a></span>aes_ecb_quic_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_ecb_quic_t) (const void *, const void *, void *out, uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8c85430db7a8b695a2836dcb96653bc5" name="a8c85430db7a8b695a2836dcb96653bc5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c85430db7a8b695a2836dcb96653bc5">&#9670;&#160;</a></span>aes_gcm_enc_dec_finalize_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_enc_dec_finalize_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac5bfb31d18fdc55451cd325c4af032c7" name="ac5bfb31d18fdc55451cd325c4af032c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5bfb31d18fdc55451cd325c4af032c7">&#9670;&#160;</a></span>aes_gcm_enc_dec_iv_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_enc_dec_iv_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, uint8_t const *, const uint64_t, const uint8_t *, uint8_t const *, const uint64_t, uint8_t *, const uint64_t, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a71fb9f25bcab533a98f3d1c5cc2c7f48" name="a71fb9f25bcab533a98f3d1c5cc2c7f48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71fb9f25bcab533a98f3d1c5cc2c7f48">&#9670;&#160;</a></span>aes_gcm_enc_dec_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_enc_dec_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, uint8_t const *, uint64_t, const uint8_t *, uint8_t const *, uint64_t, uint8_t *, uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af701adcd98fd95084d76e0cb0f926fef" name="af701adcd98fd95084d76e0cb0f926fef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af701adcd98fd95084d76e0cb0f926fef">&#9670;&#160;</a></span>aes_gcm_enc_dec_update_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_enc_dec_update_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, const uint8_t *, uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adeecd4bac067493d8465e8d7b6b7dd6d" name="adeecd4bac067493d8465e8d7b6b7dd6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adeecd4bac067493d8465e8d7b6b7dd6d">&#9670;&#160;</a></span>aes_gcm_init_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_init_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, uint8_t const *, uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a65f909001359ad986640155f8756a11d" name="a65f909001359ad986640155f8756a11d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65f909001359ad986640155f8756a11d">&#9670;&#160;</a></span>aes_gcm_init_var_iv_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_init_var_iv_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, const uint64_t, const uint8_t *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a11e10a3ac7a08801dc68949fb0f428af" name="a11e10a3ac7a08801dc68949fb0f428af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11e10a3ac7a08801dc68949fb0f428af">&#9670;&#160;</a></span>aes_gcm_pre_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_pre_t) (const void *, struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab50906d68121cb8e6edf2a3493a60c5c" name="ab50906d68121cb8e6edf2a3493a60c5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab50906d68121cb8e6edf2a3493a60c5c">&#9670;&#160;</a></span>aes_gcm_precomp_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gcm_precomp_t) (struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af3f75897a0ec8b3f22c4e2b01f7f48b7" name="af3f75897a0ec8b3f22c4e2b01f7f48b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3f75897a0ec8b3f22c4e2b01f7f48b7">&#9670;&#160;</a></span>aes_gmac_finalize_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gmac_finalize_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, uint8_t *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a31987251c968435d720e8656ae4621a0" name="a31987251c968435d720e8656ae4621a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31987251c968435d720e8656ae4621a0">&#9670;&#160;</a></span>aes_gmac_init_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gmac_init_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aba0ac59064802c6d0a182a5164568c18" name="aba0ac59064802c6d0a182a5164568c18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba0ac59064802c6d0a182a5164568c18">&#9670;&#160;</a></span>aes_gmac_update_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* aes_gmac_update_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *, const uint8_t *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aaeed8e5ec28aba6b8deef269b7c4bb28" name="aaeed8e5ec28aba6b8deef269b7c4bb28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaeed8e5ec28aba6b8deef269b7c4bb28">&#9670;&#160;</a></span>burst_fn_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t(* burst_fn_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, const uint32_t, struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> **)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aed418d6f1ec4d8a2d29c3ca2cec05f49" name="aed418d6f1ec4d8a2d29c3ca2cec05f49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed418d6f1ec4d8a2d29c3ca2cec05f49">&#9670;&#160;</a></span>chacha20_hp_quic_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* chacha20_hp_quic_t) (const void *, const void *const *, void **, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a1af4a857337cd5ccd97a4801feede864" name="a1af4a857337cd5ccd97a4801feede864"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1af4a857337cd5ccd97a4801feede864">&#9670;&#160;</a></span>chacha20_poly1305_quic_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(* chacha20_poly1305_quic_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a437de868b8dba4f9b878d99a82f80548" name="a437de868b8dba4f9b878d99a82f80548"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a437de868b8dba4f9b878d99a82f80548">&#9670;&#160;</a></span>chacha_poly_enc_dec_update_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* chacha_poly_enc_dec_update_t) (const void *, struct <a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a> *, void *, const void *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a1a96f063bf1bd07de158985b57cff4a0" name="a1a96f063bf1bd07de158985b57cff4a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1a96f063bf1bd07de158985b57cff4a0">&#9670;&#160;</a></span>chacha_poly_finalize_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* chacha_poly_finalize_t) (struct <a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a> *, void *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4b0b9ffa331f8d675d24911639f0374f" name="a4b0b9ffa331f8d675d24911639f0374f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b0b9ffa331f8d675d24911639f0374f">&#9670;&#160;</a></span>chacha_poly_init_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* chacha_poly_init_t) (const void *, struct <a class="el" href="structchacha20__poly1305__context__data.html">chacha20_poly1305_context_data</a> *, const void *, const void *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aab07996d622d682adc1db8286e633cb3" name="aab07996d622d682adc1db8286e633cb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab07996d622d682adc1db8286e633cb3">&#9670;&#160;</a></span>cmac_subkey_gen_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* cmac_subkey_gen_t) (const void *, void *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a56dd197c301ad27dc9ec0862721cb73d" name="a56dd197c301ad27dc9ec0862721cb73d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56dd197c301ad27dc9ec0862721cb73d">&#9670;&#160;</a></span>crc32_fn_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t(* crc32_fn_t) (const void *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a60a93569304a978c798bb8c4a4f7f52f" name="a60a93569304a978c798bb8c4a4f7f52f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60a93569304a978c798bb8c4a4f7f52f">&#9670;&#160;</a></span>des_keysched_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* des_keysched_t) (uint64_t *, const void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae64d0f677e42b8f8d50289113cf5e01e" name="ae64d0f677e42b8f8d50289113cf5e01e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae64d0f677e42b8f8d50289113cf5e01e">&#9670;&#160;</a></span>flush_job_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(* flush_job_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac8cb9a545cdef14f60f36fe8888e6e7c" name="ac8cb9a545cdef14f60f36fe8888e6e7c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8cb9a545cdef14f60f36fe8888e6e7c">&#9670;&#160;</a></span>get_completed_job_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(* get_completed_job_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5a533d852e3b65e9e5978fec37da43b5" name="a5a533d852e3b65e9e5978fec37da43b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a533d852e3b65e9e5978fec37da43b5">&#9670;&#160;</a></span>get_next_job_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(* get_next_job_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a12e0c05f0ecec8d75d4b288a7ec11c84" name="a12e0c05f0ecec8d75d4b288a7ec11c84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a12e0c05f0ecec8d75d4b288a7ec11c84">&#9670;&#160;</a></span>ghash_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* ghash_t) (const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *, const void *, const uint64_t, void *, const uint64_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="afacacc8b74c05c80a0ee255c68637490" name="afacacc8b74c05c80a0ee255c68637490"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afacacc8b74c05c80a0ee255c68637490">&#9670;&#160;</a></span>hash_fn_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* hash_fn_t) (const void *, const uint64_t, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aade58eb541a45650ed7d875dc2be97fa" name="aade58eb541a45650ed7d875dc2be97fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aade58eb541a45650ed7d875dc2be97fa">&#9670;&#160;</a></span>hash_one_block_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* hash_one_block_t) (const void *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa34b11bf4be97c764b283aedc0589575" name="aa34b11bf4be97c764b283aedc0589575"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa34b11bf4be97c764b283aedc0589575">&#9670;&#160;</a></span>hec_32_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t(* hec_32_t) (const uint8_t *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa9afd4ee91f0d82729afcf5f1cdcb808" name="aa9afd4ee91f0d82729afcf5f1cdcb808"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9afd4ee91f0d82729afcf5f1cdcb808">&#9670;&#160;</a></span>hec_64_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint64_t(* hec_64_t) (const uint8_t *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aed2387ba36d72c3d148fcb9d2802ccf5" name="aed2387ba36d72c3d148fcb9d2802ccf5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed2387ba36d72c3d148fcb9d2802ccf5">&#9670;&#160;</a></span>IMB_JOB</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Job structure.</p>
<p>For AES, enc_keys and dec_keys are expected to point to expanded keys structure.</p><ul>
<li>AES-CTR, AES-ECB and AES-CCM, only enc_keys is used</li>
<li>DOCSIS (AES-CBC + AES-CFB), both pointers are used enc_keys has to be set always for the partial block</li>
</ul>
<p>For DES, enc_keys and dec_keys are expected to point to DES key schedule.</p><ul>
<li>same key schedule used for enc and dec operations</li>
</ul>
<p>For 3DES, enc_keys and dec_keys are expected to point to an array of 3 pointers for the corresponding 3 key schedules.</p><ul>
<li>same key schedule used for enc and dec operations </li>
</ul>

</div>
</div>
<a id="a6d466496b4adfea3f9bc0881f11fe551" name="a6d466496b4adfea3f9bc0881f11fe551"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d466496b4adfea3f9bc0881f11fe551">&#9670;&#160;</a></span>IMB_MGR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> <a class="el" href="structIMB__MGR.html">IMB_MGR</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a6fc0ee92d9cbee157810685d592cc13a" name="a6fc0ee92d9cbee157810685d592cc13a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fc0ee92d9cbee157810685d592cc13a">&#9670;&#160;</a></span>imb_self_test_cb_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* imb_self_test_cb_t) (void *cb_arg, const <a class="el" href="structIMB__SELF__TEST__CALLBACK__DATA.html">IMB_SELF_TEST_CALLBACK_DATA</a> *data)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af0c38ca0a5aac81d8db7e0cc2811426b" name="af0c38ca0a5aac81d8db7e0cc2811426b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0c38ca0a5aac81d8db7e0cc2811426b">&#9670;&#160;</a></span>init_mb_mgr_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* init_mb_mgr_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a81afa744fb5669fe37cf0dce2193d8a7" name="a81afa744fb5669fe37cf0dce2193d8a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81afa744fb5669fe37cf0dce2193d8a7">&#9670;&#160;</a></span>kasumi_f8_1_buffer_bit_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f8_1_buffer_bit_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const void *, void *, const uint32_t, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a89fe975f0388b71765be494d04b034f4" name="a89fe975f0388b71765be494d04b034f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89fe975f0388b71765be494d04b034f4">&#9670;&#160;</a></span>kasumi_f8_1_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f8_1_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af1eb074f5da469fa655d1404be8701dd" name="af1eb074f5da469fa655d1404be8701dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1eb074f5da469fa655d1404be8701dd">&#9670;&#160;</a></span>kasumi_f8_2_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f8_2_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const uint64_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a53ecac7e009fcbeee603f975a45d3012" name="a53ecac7e009fcbeee603f975a45d3012"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a53ecac7e009fcbeee603f975a45d3012">&#9670;&#160;</a></span>kasumi_f8_3_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f8_3_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const uint64_t, const uint64_t, const void *, void *, const void *, void *, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="accf08a616e22a2c56e6a37d56f38b354" name="accf08a616e22a2c56e6a37d56f38b354"></a>
<h2 class="memtitle"><span class="permalink"><a href="#accf08a616e22a2c56e6a37d56f38b354">&#9670;&#160;</a></span>kasumi_f8_4_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f8_4_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const uint64_t, const uint64_t, const uint64_t, const void *, void *, const void *, void *, const void *, void *, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a51bbde186cdd437b6f9448e19a58e8a1" name="a51bbde186cdd437b6f9448e19a58e8a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51bbde186cdd437b6f9448e19a58e8a1">&#9670;&#160;</a></span>kasumi_f8_n_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f8_n_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t *, const void *const *, void **, const uint32_t *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8b02114f003b5fe0e1ccbfdc13ac55e4" name="a8b02114f003b5fe0e1ccbfdc13ac55e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b02114f003b5fe0e1ccbfdc13ac55e4">&#9670;&#160;</a></span>kasumi_f9_1_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f9_1_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const void *, const uint32_t, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac17147d04602964bea59322ff31ebf59" name="ac17147d04602964bea59322ff31ebf59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac17147d04602964bea59322ff31ebf59">&#9670;&#160;</a></span>kasumi_f9_1_buffer_user_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* kasumi_f9_1_buffer_user_t) (const <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *, const uint64_t, const void *, const uint32_t, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7bec62666456d8962676961cf187ac80" name="a7bec62666456d8962676961cf187ac80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bec62666456d8962676961cf187ac80">&#9670;&#160;</a></span>kasumi_init_f8_key_sched_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* kasumi_init_f8_key_sched_t) (const void *, <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8b30db8462aca1c039c3fd20646f342c" name="a8b30db8462aca1c039c3fd20646f342c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b30db8462aca1c039c3fd20646f342c">&#9670;&#160;</a></span>kasumi_init_f9_key_sched_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* kasumi_init_f9_key_sched_t) (const void *, <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad7444c36024a63025e7682c16946a00a" name="ad7444c36024a63025e7682c16946a00a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7444c36024a63025e7682c16946a00a">&#9670;&#160;</a></span>kasumi_key_sched_size_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef size_t(* kasumi_key_sched_size_t) (void)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a82d6866ebcf1bd46b684fe473b4b73f2" name="a82d6866ebcf1bd46b684fe473b4b73f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82d6866ebcf1bd46b684fe473b4b73f2">&#9670;&#160;</a></span>kasumi_key_sched_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structkasumi__key__sched__s.html">kasumi_key_sched_s</a> <a class="el" href="intel-ipsec-mb_8h.html#a82d6866ebcf1bd46b684fe473b4b73f2">kasumi_key_sched_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Structure to maintain internal key scheduling </p>

</div>
</div>
<a id="a60de89a391c8d6d9c51c742a87effb6f" name="a60de89a391c8d6d9c51c742a87effb6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60de89a391c8d6d9c51c742a87effb6f">&#9670;&#160;</a></span>keyexp_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* keyexp_t) (const void *, void *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a9884ae92b598dd504f7d0ef8be5051d6" name="a9884ae92b598dd504f7d0ef8be5051d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9884ae92b598dd504f7d0ef8be5051d6">&#9670;&#160;</a></span>queue_size_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t(* queue_size_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a071ff3c56e36f25d0df0e8505121bd68" name="a071ff3c56e36f25d0df0e8505121bd68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a071ff3c56e36f25d0df0e8505121bd68">&#9670;&#160;</a></span>sm4_keyexp_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* sm4_keyexp_t) (const void *, void *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7bd00b31d12260305accf0d37b60c958" name="a7bd00b31d12260305accf0d37b60c958"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bd00b31d12260305accf0d37b60c958">&#9670;&#160;</a></span>snow3g_f8_1_buffer_bit_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_1_buffer_bit_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, void *, const uint32_t, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a281315fb8b441d837ebed541b3a23380" name="a281315fb8b441d837ebed541b3a23380"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a281315fb8b441d837ebed541b3a23380">&#9670;&#160;</a></span>snow3g_f8_1_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_1_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4e8912e7e55a2ac891f85c19e7f29328" name="a4e8912e7e55a2ac891f85c19e7f29328"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e8912e7e55a2ac891f85c19e7f29328">&#9670;&#160;</a></span>snow3g_f8_2_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_2_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae13b1154dcc13ca562e81471659d6099" name="ae13b1154dcc13ca562e81471659d6099"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae13b1154dcc13ca562e81471659d6099">&#9670;&#160;</a></span>snow3g_f8_4_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_4_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const void *, const void *, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aaea53cd00d9e0129c7822c644c5f97d7" name="aaea53cd00d9e0129c7822c644c5f97d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaea53cd00d9e0129c7822c644c5f97d7">&#9670;&#160;</a></span>snow3g_f8_8_buffer_multikey_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_8_buffer_multikey_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *const [], const void *const [], const void *const [], void *[], const uint32_t[])</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a6155f472c6794e88289235752d83154a" name="a6155f472c6794e88289235752d83154a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6155f472c6794e88289235752d83154a">&#9670;&#160;</a></span>snow3g_f8_8_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_8_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const void *, const void *, const void *, const void *, const void *, const void *, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aed316ea9b9de140a52506ea1c63f56aa" name="aed316ea9b9de140a52506ea1c63f56aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed316ea9b9de140a52506ea1c63f56aa">&#9670;&#160;</a></span>snow3g_f8_n_buffer_multikey_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_n_buffer_multikey_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *const [], const void *const [], const void *const [], void *[], const uint32_t[], const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a876cc51e6e6f2dd55134891573891833" name="a876cc51e6e6f2dd55134891573891833"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a876cc51e6e6f2dd55134891573891833">&#9670;&#160;</a></span>snow3g_f8_n_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f8_n_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *const [], const void *const [], void *[], const uint32_t[], const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae7a48386f7190b4e46cd113eee413733" name="ae7a48386f7190b4e46cd113eee413733"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7a48386f7190b4e46cd113eee413733">&#9670;&#160;</a></span>snow3g_f9_1_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* snow3g_f9_1_buffer_t) (const <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *, const void *, const void *, const uint64_t, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="adfa182361f1c179d75129b4e46841af5" name="adfa182361f1c179d75129b4e46841af5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfa182361f1c179d75129b4e46841af5">&#9670;&#160;</a></span>snow3g_init_key_sched_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* snow3g_init_key_sched_t) (const void *, <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad78a4f1c0d6de808f7046c0fbcd98d8f" name="ad78a4f1c0d6de808f7046c0fbcd98d8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad78a4f1c0d6de808f7046c0fbcd98d8f">&#9670;&#160;</a></span>snow3g_key_sched_size_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef size_t(* snow3g_key_sched_size_t) (void)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ae50b48832b41b4b468cf933b44849213" name="ae50b48832b41b4b468cf933b44849213"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae50b48832b41b4b468cf933b44849213">&#9670;&#160;</a></span>snow3g_key_schedule_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structsnow3g__key__schedule__s.html">snow3g_key_schedule_s</a> <a class="el" href="intel-ipsec-mb_8h.html#ae50b48832b41b4b468cf933b44849213">snow3g_key_schedule_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Snow3G key scheduling structure </p>

</div>
</div>
<a id="ac4bd89ab3cb1341eb4f30c4c501a9009" name="ac4bd89ab3cb1341eb4f30c4c501a9009"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4bd89ab3cb1341eb4f30c4c501a9009">&#9670;&#160;</a></span>submit_cipher_burst_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t(* submit_cipher_burst_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *, const uint32_t, const <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a> cipher, const <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a> dir, const <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a> key_size)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4f6fca648737cec9ee869786e9c240b5" name="a4f6fca648737cec9ee869786e9c240b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f6fca648737cec9ee869786e9c240b5">&#9670;&#160;</a></span>submit_hash_burst_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t(* submit_hash_burst_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *, struct <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *, const uint32_t, const <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a> hash)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a41297d789b434157e746e338f0af96ec" name="a41297d789b434157e746e338f0af96ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41297d789b434157e746e338f0af96ec">&#9670;&#160;</a></span>submit_job_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structIMB__JOB.html">IMB_JOB</a> *(* submit_job_t) (struct <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abb36f71b9fb4d928c2ad9fa462b80ae6" name="abb36f71b9fb4d928c2ad9fa462b80ae6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb36f71b9fb4d928c2ad9fa462b80ae6">&#9670;&#160;</a></span>xcbc_keyexp_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* xcbc_keyexp_t) (const void *, void *, void *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0a3032f0698c42bd486d053e90c44fdd" name="a0a3032f0698c42bd486d053e90c44fdd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a3032f0698c42bd486d053e90c44fdd">&#9670;&#160;</a></span>zuc_eea3_1_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* zuc_eea3_1_buffer_t) (const void *, const void *, const void *, void *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7df2e3f063333d677ef7668626126c4d" name="a7df2e3f063333d677ef7668626126c4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7df2e3f063333d677ef7668626126c4d">&#9670;&#160;</a></span>zuc_eea3_4_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* zuc_eea3_4_buffer_t) (const void *const *, const void *const *, const void *const *, void **, const uint32_t *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a303f2dd11b1193938596b4ec69edf8cc" name="a303f2dd11b1193938596b4ec69edf8cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a303f2dd11b1193938596b4ec69edf8cc">&#9670;&#160;</a></span>zuc_eea3_n_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* zuc_eea3_n_buffer_t) (const void *const *, const void *const *, const void *const *, void **, const uint32_t *, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a95ed5580686f708ba2313179cd6064a8" name="a95ed5580686f708ba2313179cd6064a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95ed5580686f708ba2313179cd6064a8">&#9670;&#160;</a></span>zuc_eia3_1_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* zuc_eia3_1_buffer_t) (const void *, const void *, const void *, const uint32_t, uint32_t *)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ada45082bb04dd727c0deec5c4fc96fed" name="ada45082bb04dd727c0deec5c4fc96fed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada45082bb04dd727c0deec5c4fc96fed">&#9670;&#160;</a></span>zuc_eia3_n_buffer_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* zuc_eia3_n_buffer_t) (const void *const *, const void *const *, const void *const *, const uint32_t *, uint32_t **, const uint32_t)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="ad138a5bf5508a0be5d3d61f018d5ebb6" name="ad138a5bf5508a0be5d3d61f018d5ebb6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad138a5bf5508a0be5d3d61f018d5ebb6">&#9670;&#160;</a></span>IMB_ARCH</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6">IMB_ARCH</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Architecture definitions </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad138a5bf5508a0be5d3d61f018d5ebb6a1ff5121849f183accf83fd652b854733" name="ad138a5bf5508a0be5d3d61f018d5ebb6a1ff5121849f183accf83fd652b854733"></a>IMB_ARCH_NONE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad138a5bf5508a0be5d3d61f018d5ebb6a3c2ccbe898a62cbaed5bad7717fdfa16" name="ad138a5bf5508a0be5d3d61f018d5ebb6a3c2ccbe898a62cbaed5bad7717fdfa16"></a>IMB_ARCH_SSE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad138a5bf5508a0be5d3d61f018d5ebb6a701628fddfdd84d56495839f20573de6" name="ad138a5bf5508a0be5d3d61f018d5ebb6a701628fddfdd84d56495839f20573de6"></a>IMB_ARCH_AVX2&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad138a5bf5508a0be5d3d61f018d5ebb6a1df4f12c5769b52a95f1a4b89a8163c8" name="ad138a5bf5508a0be5d3d61f018d5ebb6a1df4f12c5769b52a95f1a4b89a8163c8"></a>IMB_ARCH_AVX512&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad138a5bf5508a0be5d3d61f018d5ebb6ae6536a65a8d0cd53faa325d5ee4dcdda" name="ad138a5bf5508a0be5d3d61f018d5ebb6ae6536a65a8d0cd53faa325d5ee4dcdda"></a>IMB_ARCH_NUM&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="a4a72299215a4838a93cdce6e5a37cfa5" name="a4a72299215a4838a93cdce6e5a37cfa5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a72299215a4838a93cdce6e5a37cfa5">&#9670;&#160;</a></span>IMB_CHAIN_ORDER</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#a4a72299215a4838a93cdce6e5a37cfa5">IMB_CHAIN_ORDER</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4a72299215a4838a93cdce6e5a37cfa5a5e3ab845752ce3d16e40ea7802ce4a52" name="a4a72299215a4838a93cdce6e5a37cfa5a5e3ab845752ce3d16e40ea7802ce4a52"></a>IMB_ORDER_CIPHER_HASH&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a4a72299215a4838a93cdce6e5a37cfa5a5de8d032616267941d99dad14801044d" name="a4a72299215a4838a93cdce6e5a37cfa5a5de8d032616267941d99dad14801044d"></a>IMB_ORDER_HASH_CIPHER&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="abdbf0bd32da801c52993cadb7a49c9ee" name="abdbf0bd32da801c52993cadb7a49c9ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdbf0bd32da801c52993cadb7a49c9ee">&#9670;&#160;</a></span>IMB_CIPHER_DIRECTION</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="abdbf0bd32da801c52993cadb7a49c9eeabed12e936823e8f8b2de70388a2d15ce" name="abdbf0bd32da801c52993cadb7a49c9eeabed12e936823e8f8b2de70388a2d15ce"></a>IMB_DIR_ENCRYPT&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="abdbf0bd32da801c52993cadb7a49c9eea881652011955c227d94a881d2d2c5c59" name="abdbf0bd32da801c52993cadb7a49c9eea881652011955c227d94a881d2d2c5c59"></a>IMB_DIR_DECRYPT&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="a3be1dfb4cbd4bd13dfdb2cf881f8334c" name="a3be1dfb4cbd4bd13dfdb2cf881f8334c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3be1dfb4cbd4bd13dfdb2cf881f8334c">&#9670;&#160;</a></span>IMB_CIPHER_MODE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>IMB_ERR_MIN should be higher than __ELASTERROR to avoid overlap with standard error values </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca0e2ebfcfd101ab4a39129082b2de517f" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca0e2ebfcfd101ab4a39129082b2de517f"></a>IMB_CIPHER_CBC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca5b4126e439eaff0975846425594201ea" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca5b4126e439eaff0975846425594201ea"></a>IMB_CIPHER_CNTR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cae37b15031c4f905008e7b00f618baec0" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cae37b15031c4f905008e7b00f618baec0"></a>IMB_CIPHER_CTR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca0bebd24d7311dedce100455dd3a8ddf6" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca0bebd24d7311dedce100455dd3a8ddf6"></a>IMB_CIPHER_NULL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334caed8ba68d7d2d7602407f17305d1d99b7" name="a3be1dfb4cbd4bd13dfdb2cf881f8334caed8ba68d7d2d7602407f17305d1d99b7"></a>IMB_CIPHER_DOCSIS_SEC_BPI&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca0f97344e525fef167a92d1a59a0492aa" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca0f97344e525fef167a92d1a59a0492aa"></a>IMB_CIPHER_GCM&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca4301726c71a4faf412a1a011cc4f0df8" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca4301726c71a4faf412a1a011cc4f0df8"></a>IMB_CIPHER_CUSTOM&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca049e85047492494fac0a4ec785707851" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca049e85047492494fac0a4ec785707851"></a>IMB_CIPHER_DES&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334caf9d62e1ff3a1a8b2ed1dcc515a3ffe1b" name="a3be1dfb4cbd4bd13dfdb2cf881f8334caf9d62e1ff3a1a8b2ed1dcc515a3ffe1b"></a>IMB_CIPHER_DOCSIS_DES&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca7d3946d77e4364bc45a9e72499bf817f" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca7d3946d77e4364bc45a9e72499bf817f"></a>IMB_CIPHER_CCM&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca639b1382de364a2b810f7876189bc64f" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca639b1382de364a2b810f7876189bc64f"></a>IMB_CIPHER_DES3&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca896285cd2fe56f73011b908e490cbbea" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca896285cd2fe56f73011b908e490cbbea"></a>IMB_CIPHER_PON_AES_CNTR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca625873443fc051fe1a6623adfe8e9145" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca625873443fc051fe1a6623adfe8e9145"></a>IMB_CIPHER_PON_AES_CTR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca357dec895f8dfa3371add1feaa001f56" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca357dec895f8dfa3371add1feaa001f56"></a>IMB_CIPHER_ECB&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca6f69815480531651948b5549fa84023a" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca6f69815480531651948b5549fa84023a"></a>IMB_CIPHER_CNTR_BITLEN&#160;</td><td class="fielddoc"><p>128-EEA2/NEA2 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cae7239cb72b2afa0033ebca478af0078e" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cae7239cb72b2afa0033ebca478af0078e"></a>IMB_CIPHER_CTR_BITLEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca3618bfaab3c19aabc8a93a03ae121efc" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca3618bfaab3c19aabc8a93a03ae121efc"></a>IMB_CIPHER_ZUC_EEA3&#160;</td><td class="fielddoc"><p>128-EEA3/NEA3 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca88c3ff9a6816b3629dc5b4815b47607e" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca88c3ff9a6816b3629dc5b4815b47607e"></a>IMB_CIPHER_SNOW3G_UEA2_BITLEN&#160;</td><td class="fielddoc"><p>128-UEA2 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca3f7a3edb272955efea015c5bb8572e3b" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca3f7a3edb272955efea015c5bb8572e3b"></a>IMB_CIPHER_KASUMI_UEA1_BITLEN&#160;</td><td class="fielddoc"><p>128-UEA1 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca71d87659793f7377d1d8b3315a3559f8" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca71d87659793f7377d1d8b3315a3559f8"></a>IMB_CIPHER_CBCS_1_9&#160;</td><td class="fielddoc"><p>MPEG CENC (ISO 23001-7) </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca39d8d7ebca424a1c1a65bc04b5f64741" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca39d8d7ebca424a1c1a65bc04b5f64741"></a>IMB_CIPHER_CHACHA20&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334caa5c375f97dce274a2446c8abf90aa61a" name="a3be1dfb4cbd4bd13dfdb2cf881f8334caa5c375f97dce274a2446c8abf90aa61a"></a>IMB_CIPHER_CHACHA20_POLY1305&#160;</td><td class="fielddoc"><p>AEAD CHACHA20 </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca40926d8b731a401ec3e86ffa2089a1eb" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca40926d8b731a401ec3e86ffa2089a1eb"></a>IMB_CIPHER_CHACHA20_POLY1305_SGL&#160;</td><td class="fielddoc"><p>AEAD CHACHA20 with SGL support </p>
</td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cafea56410df85a0b006963e50fba78465" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cafea56410df85a0b006963e50fba78465"></a>IMB_CIPHER_SNOW_V&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cada26994f8467300f862dbf45b5a22409" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cada26994f8467300f862dbf45b5a22409"></a>IMB_CIPHER_SNOW_V_AEAD&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca48e024bc875c46b714b19a1c19908918" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca48e024bc875c46b714b19a1c19908918"></a>IMB_CIPHER_GCM_SGL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca7adbd2a1ad3472becfc1e39e4dd102ba" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca7adbd2a1ad3472becfc1e39e4dd102ba"></a>IMB_CIPHER_SM4_ECB&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cad491b9e7827ce4556c81b430a7e78e96" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cad491b9e7827ce4556c81b430a7e78e96"></a>IMB_CIPHER_SM4_CBC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cae5e7135341635a0f358339bb320b5b91" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cae5e7135341635a0f358339bb320b5b91"></a>IMB_CIPHER_CFB&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca8ed4f2bf5a5ee207cab40d64f3f797aa" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca8ed4f2bf5a5ee207cab40d64f3f797aa"></a>IMB_CIPHER_SM4_CNTR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334cac730e03aa6877b1cc210a19ab6501151" name="a3be1dfb4cbd4bd13dfdb2cf881f8334cac730e03aa6877b1cc210a19ab6501151"></a>IMB_CIPHER_SM4_CTR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca948e8919158b0d8171ee64cd949de4eb" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca948e8919158b0d8171ee64cd949de4eb"></a>IMB_CIPHER_SM4_GCM&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a3be1dfb4cbd4bd13dfdb2cf881f8334ca78c470d405fb36037e41224b99d23c75" name="a3be1dfb4cbd4bd13dfdb2cf881f8334ca78c470d405fb36037e41224b99d23c75"></a>IMB_CIPHER_NUM&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="aa12c6dbc4b212887ef528c215f513e0b" name="aa12c6dbc4b212887ef528c215f513e0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa12c6dbc4b212887ef528c215f513e0b">&#9670;&#160;</a></span>IMB_ERR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#aa12c6dbc4b212887ef528c215f513e0b">IMB_ERR</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Library error types </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba3f9d55f356a0caf413d2114a468ba659" name="aa12c6dbc4b212887ef528c215f513e0ba3f9d55f356a0caf413d2114a468ba659"></a>IMB_ERR_MIN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba9ba69cc32a2d17e3e7b4d4c982f26abd" name="aa12c6dbc4b212887ef528c215f513e0ba9ba69cc32a2d17e3e7b4d4c982f26abd"></a>IMB_ERR_NULL_MBMGR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba4bc6a784afa9bb88c5afe4fd1b5f610d" name="aa12c6dbc4b212887ef528c215f513e0ba4bc6a784afa9bb88c5afe4fd1b5f610d"></a>IMB_ERR_JOB_NULL_SRC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba55b3ddc1a48cb14ad020031b8d5b4927" name="aa12c6dbc4b212887ef528c215f513e0ba55b3ddc1a48cb14ad020031b8d5b4927"></a>IMB_ERR_JOB_NULL_DST&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba22402460340d6b34492ece390a7913c0" name="aa12c6dbc4b212887ef528c215f513e0ba22402460340d6b34492ece390a7913c0"></a>IMB_ERR_JOB_NULL_KEY&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba0d35070d6476cde0202deb5531ae09c2" name="aa12c6dbc4b212887ef528c215f513e0ba0d35070d6476cde0202deb5531ae09c2"></a>IMB_ERR_JOB_NULL_IV&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba503544043c60c2195003c00b18141beb" name="aa12c6dbc4b212887ef528c215f513e0ba503544043c60c2195003c00b18141beb"></a>IMB_ERR_JOB_NULL_AUTH&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba3ef3d3180e3052862c796cf89320d60c" name="aa12c6dbc4b212887ef528c215f513e0ba3ef3d3180e3052862c796cf89320d60c"></a>IMB_ERR_JOB_NULL_AAD&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bae1c9e58d4be3fdd7bb37247667472920" name="aa12c6dbc4b212887ef528c215f513e0bae1c9e58d4be3fdd7bb37247667472920"></a>IMB_ERR_JOB_CIPH_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba69dd17473dc4afb2f04c417fe6882608" name="aa12c6dbc4b212887ef528c215f513e0ba69dd17473dc4afb2f04c417fe6882608"></a>IMB_ERR_JOB_AUTH_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba390f91827f87bbd3233ad6e1f104b2b4" name="aa12c6dbc4b212887ef528c215f513e0ba390f91827f87bbd3233ad6e1f104b2b4"></a>IMB_ERR_JOB_IV_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0badfea107da94936d30900f23ad22b5285" name="aa12c6dbc4b212887ef528c215f513e0badfea107da94936d30900f23ad22b5285"></a>IMB_ERR_JOB_KEY_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba1b7e4c43808275e9cd63ca21091e5ab2" name="aa12c6dbc4b212887ef528c215f513e0ba1b7e4c43808275e9cd63ca21091e5ab2"></a>IMB_ERR_JOB_AUTH_TAG_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba31a6b672b95d7d100a97fa6d788c0dd6" name="aa12c6dbc4b212887ef528c215f513e0ba31a6b672b95d7d100a97fa6d788c0dd6"></a>IMB_ERR_JOB_AAD_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba207979780b5d8472dfef2f5e12998d22" name="aa12c6dbc4b212887ef528c215f513e0ba207979780b5d8472dfef2f5e12998d22"></a>IMB_ERR_JOB_SRC_OFFSET&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bacaec18a061b4bf792178408d69775950" name="aa12c6dbc4b212887ef528c215f513e0bacaec18a061b4bf792178408d69775950"></a>IMB_ERR_JOB_CHAIN_ORDER&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba61a411feda0e8cf5aff8c58ad2e92bdd" name="aa12c6dbc4b212887ef528c215f513e0ba61a411feda0e8cf5aff8c58ad2e92bdd"></a>IMB_ERR_CIPH_MODE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba8ac2802661bd9928d0c766129db2a814" name="aa12c6dbc4b212887ef528c215f513e0ba8ac2802661bd9928d0c766129db2a814"></a>IMB_ERR_HASH_ALGO&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba97fb89f93299f67de86aac919bb83aa9" name="aa12c6dbc4b212887ef528c215f513e0ba97fb89f93299f67de86aac919bb83aa9"></a>IMB_ERR_JOB_NULL_AUTH_KEY&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba05f9212af539a22ad65b12a9abc8e5c0" name="aa12c6dbc4b212887ef528c215f513e0ba05f9212af539a22ad65b12a9abc8e5c0"></a>IMB_ERR_JOB_NULL_SGL_CTX&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba983561202b1623b0bd1f691bd6036039" name="aa12c6dbc4b212887ef528c215f513e0ba983561202b1623b0bd1f691bd6036039"></a>IMB_ERR_JOB_NULL_NEXT_IV&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bace7e834842ddef5b063c99544d00b303" name="aa12c6dbc4b212887ef528c215f513e0bace7e834842ddef5b063c99544d00b303"></a>IMB_ERR_JOB_PON_PLI&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba308819b7cbdadfd6bbee290408880302" name="aa12c6dbc4b212887ef528c215f513e0ba308819b7cbdadfd6bbee290408880302"></a>IMB_ERR_NULL_SRC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba1a61dcc99a1a9725c89076dec3c02e02" name="aa12c6dbc4b212887ef528c215f513e0ba1a61dcc99a1a9725c89076dec3c02e02"></a>IMB_ERR_NULL_DST&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba63029e3673eef74345ad80867f7ba0ef" name="aa12c6dbc4b212887ef528c215f513e0ba63029e3673eef74345ad80867f7ba0ef"></a>IMB_ERR_NULL_KEY&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba3b60a570372529486da69c6d2b7be382" name="aa12c6dbc4b212887ef528c215f513e0ba3b60a570372529486da69c6d2b7be382"></a>IMB_ERR_NULL_EXP_KEY&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bafcfe882ee9730fd1724b587106f2f419" name="aa12c6dbc4b212887ef528c215f513e0bafcfe882ee9730fd1724b587106f2f419"></a>IMB_ERR_NULL_IV&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba1e20954ec8a501093175d640631550c1" name="aa12c6dbc4b212887ef528c215f513e0ba1e20954ec8a501093175d640631550c1"></a>IMB_ERR_NULL_AUTH&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0badc7d17d90012d5c14fd8a12d9ea12543" name="aa12c6dbc4b212887ef528c215f513e0badc7d17d90012d5c14fd8a12d9ea12543"></a>IMB_ERR_NULL_AAD&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bab5a2b4c1df7778c3efc236976062ed94" name="aa12c6dbc4b212887ef528c215f513e0bab5a2b4c1df7778c3efc236976062ed94"></a>IMB_ERR_CIPH_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bafe5af1c17e1caece14b3a5f659a1336d" name="aa12c6dbc4b212887ef528c215f513e0bafe5af1c17e1caece14b3a5f659a1336d"></a>IMB_ERR_AUTH_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0baac8500b58709f0bd05ad129337bb6af2" name="aa12c6dbc4b212887ef528c215f513e0baac8500b58709f0bd05ad129337bb6af2"></a>IMB_ERR_IV_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba8d6b3ea721216bb12fbe40e72a5bd768" name="aa12c6dbc4b212887ef528c215f513e0ba8d6b3ea721216bb12fbe40e72a5bd768"></a>IMB_ERR_KEY_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba6af5bd8fb7690b46afe3d2c1e623808e" name="aa12c6dbc4b212887ef528c215f513e0ba6af5bd8fb7690b46afe3d2c1e623808e"></a>IMB_ERR_AUTH_TAG_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba0ad3ade3fe22c5887d9bf444ff3923aa" name="aa12c6dbc4b212887ef528c215f513e0ba0ad3ade3fe22c5887d9bf444ff3923aa"></a>IMB_ERR_AAD_LEN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba20dfbdc8feb8332a9efe51de48fa6e09" name="aa12c6dbc4b212887ef528c215f513e0ba20dfbdc8feb8332a9efe51de48fa6e09"></a>IMB_ERR_SRC_OFFSET&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0baa4f5aeab78ed40a4c19389b8f691306c" name="aa12c6dbc4b212887ef528c215f513e0baa4f5aeab78ed40a4c19389b8f691306c"></a>IMB_ERR_NULL_AUTH_KEY&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba0b57ec134f6e10e11c3fbcf77ede282d" name="aa12c6dbc4b212887ef528c215f513e0ba0b57ec134f6e10e11c3fbcf77ede282d"></a>IMB_ERR_NULL_CTX&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bacb9286af7533993ab79982b288aab97a" name="aa12c6dbc4b212887ef528c215f513e0bacb9286af7533993ab79982b288aab97a"></a>IMB_ERR_JOB_NULL_HMAC_OPAD&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba15f55e87bb42cf5494dd01b9a1c4d712" name="aa12c6dbc4b212887ef528c215f513e0ba15f55e87bb42cf5494dd01b9a1c4d712"></a>IMB_ERR_JOB_NULL_HMAC_IPAD&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba69bf9e54fdf84b154284eab071c98804" name="aa12c6dbc4b212887ef528c215f513e0ba69bf9e54fdf84b154284eab071c98804"></a>IMB_ERR_JOB_NULL_XCBC_K1_EXP&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bad7fbd09092821fb8605e11384dcdc428" name="aa12c6dbc4b212887ef528c215f513e0bad7fbd09092821fb8605e11384dcdc428"></a>IMB_ERR_JOB_NULL_XCBC_K2&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0baf12955208a99c8feeeb580fee940b7c3" name="aa12c6dbc4b212887ef528c215f513e0baf12955208a99c8feeeb580fee940b7c3"></a>IMB_ERR_JOB_NULL_XCBC_K3&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bacbf5d148be9963df1d46400ff26396db" name="aa12c6dbc4b212887ef528c215f513e0bacbf5d148be9963df1d46400ff26396db"></a>IMB_ERR_JOB_CIPH_DIR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba6c97704719f286b14204ca144bbdc7a9" name="aa12c6dbc4b212887ef528c215f513e0ba6c97704719f286b14204ca144bbdc7a9"></a>IMB_ERR_JOB_NULL_GHASH_INIT_TAG&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0babdd0b7bc92e7dcf166d36a9bcd118d60" name="aa12c6dbc4b212887ef528c215f513e0babdd0b7bc92e7dcf166d36a9bcd118d60"></a>IMB_ERR_MISSING_CPUFLAGS_INIT_MGR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba007c436f8e21f317e8f9225c5b009d38" name="aa12c6dbc4b212887ef528c215f513e0ba007c436f8e21f317e8f9225c5b009d38"></a>IMB_ERR_NULL_JOB&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba4f73ed8232981b84df1fee21024e01ac" name="aa12c6dbc4b212887ef528c215f513e0ba4f73ed8232981b84df1fee21024e01ac"></a>IMB_ERR_QUEUE_SPACE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba99d845a176cd571dd6f99b0a430291c6" name="aa12c6dbc4b212887ef528c215f513e0ba99d845a176cd571dd6f99b0a430291c6"></a>IMB_ERR_NULL_BURST&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bae2bc238b157942636836eaf0eedb5ddf" name="aa12c6dbc4b212887ef528c215f513e0bae2bc238b157942636836eaf0eedb5ddf"></a>IMB_ERR_BURST_SIZE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bae4584575cf7134ba02ca1d38bb3f6444" name="aa12c6dbc4b212887ef528c215f513e0bae4584575cf7134ba02ca1d38bb3f6444"></a>IMB_ERR_BURST_OOO&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba1873d38b8aaf5ebcd3f542b15c418829" name="aa12c6dbc4b212887ef528c215f513e0ba1873d38b8aaf5ebcd3f542b15c418829"></a>IMB_ERR_SELFTEST&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba436eb6f9e045a02e3ad5998da8c13d78" name="aa12c6dbc4b212887ef528c215f513e0ba436eb6f9e045a02e3ad5998da8c13d78"></a>IMB_ERR_BURST_SUITE_ID&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0ba932b3d39bef22ae92d181a207563392f" name="aa12c6dbc4b212887ef528c215f513e0ba932b3d39bef22ae92d181a207563392f"></a>IMB_ERR_JOB_SGL_STATE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aa12c6dbc4b212887ef528c215f513e0bac773be615f9904fd69e961451fb0fac6" name="aa12c6dbc4b212887ef528c215f513e0bac773be615f9904fd69e961451fb0fac6"></a>IMB_ERR_MAX&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="a83132be2c4a6bf0453550bd1ae720006" name="a83132be2c4a6bf0453550bd1ae720006"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83132be2c4a6bf0453550bd1ae720006">&#9670;&#160;</a></span>IMB_HASH_ALG</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a441cc344587709b2ff2fc26f36ff1e58" name="a83132be2c4a6bf0453550bd1ae720006a441cc344587709b2ff2fc26f36ff1e58"></a>IMB_AUTH_HMAC_SHA_1&#160;</td><td class="fielddoc"><p>HMAC-SHA1 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ad0ad42ef3cb8cef38a29bcc667e70fca" name="a83132be2c4a6bf0453550bd1ae720006ad0ad42ef3cb8cef38a29bcc667e70fca"></a>IMB_AUTH_HMAC_SHA_224&#160;</td><td class="fielddoc"><p>HMAC-SHA224 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a60c1e71108516903aded4534f0f2e995" name="a83132be2c4a6bf0453550bd1ae720006a60c1e71108516903aded4534f0f2e995"></a>IMB_AUTH_HMAC_SHA_256&#160;</td><td class="fielddoc"><p>HMAC-SHA256 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ae98f8f8e42b7a026bb2aa2a402a291b9" name="a83132be2c4a6bf0453550bd1ae720006ae98f8f8e42b7a026bb2aa2a402a291b9"></a>IMB_AUTH_HMAC_SHA_384&#160;</td><td class="fielddoc"><p>HMAC-SHA384 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ad8f7bc68ad10fe75665692a27ada55f1" name="a83132be2c4a6bf0453550bd1ae720006ad8f7bc68ad10fe75665692a27ada55f1"></a>IMB_AUTH_HMAC_SHA_512&#160;</td><td class="fielddoc"><p>HMAC-SHA512 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a17deb61684701b7ec37f68bd34b6d454" name="a83132be2c4a6bf0453550bd1ae720006a17deb61684701b7ec37f68bd34b6d454"></a>IMB_AUTH_AES_XCBC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a958fb278e4745955ebc791ba652954fe" name="a83132be2c4a6bf0453550bd1ae720006a958fb278e4745955ebc791ba652954fe"></a>IMB_AUTH_MD5&#160;</td><td class="fielddoc"><p>HMAC-MD5 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a25f47297460775ab891a0abb8240b8e0" name="a83132be2c4a6bf0453550bd1ae720006a25f47297460775ab891a0abb8240b8e0"></a>IMB_AUTH_NULL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006aa1496e45f00afe54aeeb527089e14a0d" name="a83132be2c4a6bf0453550bd1ae720006aa1496e45f00afe54aeeb527089e14a0d"></a>IMB_AUTH_AES_GMAC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a70151af8840242c8f5bdb375f2f1135b" name="a83132be2c4a6bf0453550bd1ae720006a70151af8840242c8f5bdb375f2f1135b"></a>IMB_AUTH_CUSTOM&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a824187b143cb8d4b1778d10bcedbce3e" name="a83132be2c4a6bf0453550bd1ae720006a824187b143cb8d4b1778d10bcedbce3e"></a>IMB_AUTH_AES_CCM&#160;</td><td class="fielddoc"><p>AES128-CCM </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006aed85279dbff19be59c16216364375a48" name="a83132be2c4a6bf0453550bd1ae720006aed85279dbff19be59c16216364375a48"></a>IMB_AUTH_AES_CMAC&#160;</td><td class="fielddoc"><p>AES128-CMAC </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006adcaf4a43c9c114bcdb75ff44ba1bea77" name="a83132be2c4a6bf0453550bd1ae720006adcaf4a43c9c114bcdb75ff44ba1bea77"></a>IMB_AUTH_SHA_1&#160;</td><td class="fielddoc"><p>SHA1 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a3936068075b4572d859c9b1984312325" name="a83132be2c4a6bf0453550bd1ae720006a3936068075b4572d859c9b1984312325"></a>IMB_AUTH_SHA_224&#160;</td><td class="fielddoc"><p>SHA224 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a4962dbdf6fcb8d743e4ab55ce23c4b88" name="a83132be2c4a6bf0453550bd1ae720006a4962dbdf6fcb8d743e4ab55ce23c4b88"></a>IMB_AUTH_SHA_256&#160;</td><td class="fielddoc"><p>SHA256 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006afe74859581d19e70b8667773662081bc" name="a83132be2c4a6bf0453550bd1ae720006afe74859581d19e70b8667773662081bc"></a>IMB_AUTH_SHA_384&#160;</td><td class="fielddoc"><p>SHA384 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006aa12aca10078adbe0bc2a021190663e2d" name="a83132be2c4a6bf0453550bd1ae720006aa12aca10078adbe0bc2a021190663e2d"></a>IMB_AUTH_SHA_512&#160;</td><td class="fielddoc"><p>SHA512 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006aa9a94b55feed30ce57ecadf17b7c1a83" name="a83132be2c4a6bf0453550bd1ae720006aa9a94b55feed30ce57ecadf17b7c1a83"></a>IMB_AUTH_AES_CMAC_BITLEN&#160;</td><td class="fielddoc"><p>128-EIA2/NIA2 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a2fcc080535b4dd16502ecd2b01c14048" name="a83132be2c4a6bf0453550bd1ae720006a2fcc080535b4dd16502ecd2b01c14048"></a>IMB_AUTH_PON_CRC_BIP&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a188c2297dc5228820e690e8938cd407b" name="a83132be2c4a6bf0453550bd1ae720006a188c2297dc5228820e690e8938cd407b"></a>IMB_AUTH_ZUC_EIA3_BITLEN&#160;</td><td class="fielddoc"><p>128-EIA3/NIA3 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ae006c86697198ca852fc612d376135dc" name="a83132be2c4a6bf0453550bd1ae720006ae006c86697198ca852fc612d376135dc"></a>IMB_AUTH_DOCSIS_CRC32&#160;</td><td class="fielddoc"><p>with DOCSIS_SEC_BPI only </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a4eadf3270a81eb2567388843da2fa89b" name="a83132be2c4a6bf0453550bd1ae720006a4eadf3270a81eb2567388843da2fa89b"></a>IMB_AUTH_SNOW3G_UIA2_BITLEN&#160;</td><td class="fielddoc"><p>128-UIA2 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a42dc1dc990059b61ef784813e0f8f49a" name="a83132be2c4a6bf0453550bd1ae720006a42dc1dc990059b61ef784813e0f8f49a"></a>IMB_AUTH_KASUMI_UIA1&#160;</td><td class="fielddoc"><p>128-UIA1 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a189af960a1558b7ac3289c0892739ea0" name="a83132be2c4a6bf0453550bd1ae720006a189af960a1558b7ac3289c0892739ea0"></a>IMB_AUTH_AES_GMAC_128&#160;</td><td class="fielddoc"><p>AES-GMAC (128-bit key) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006adfd8db9df85ef929d9e4a38612f07d66" name="a83132be2c4a6bf0453550bd1ae720006adfd8db9df85ef929d9e4a38612f07d66"></a>IMB_AUTH_AES_GMAC_192&#160;</td><td class="fielddoc"><p>AES-GMAC (192-bit key) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ae6fab01dbaf8b0110ca8ccdce98547af" name="a83132be2c4a6bf0453550bd1ae720006ae6fab01dbaf8b0110ca8ccdce98547af"></a>IMB_AUTH_AES_GMAC_256&#160;</td><td class="fielddoc"><p>AES-GMAC (256-bit key) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a0d0cad9513b19110454c9e4e9c549205" name="a83132be2c4a6bf0453550bd1ae720006a0d0cad9513b19110454c9e4e9c549205"></a>IMB_AUTH_AES_CMAC_256&#160;</td><td class="fielddoc"><p>AES256-CMAC </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a93e6c082f7ec5926a087d139a2bd2e56" name="a83132be2c4a6bf0453550bd1ae720006a93e6c082f7ec5926a087d139a2bd2e56"></a>IMB_AUTH_POLY1305&#160;</td><td class="fielddoc"><p>POLY1305 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ab737fa5ff7244ddf5024905f6477ae01" name="a83132be2c4a6bf0453550bd1ae720006ab737fa5ff7244ddf5024905f6477ae01"></a>IMB_AUTH_CHACHA20_POLY1305&#160;</td><td class="fielddoc"><p>AEAD POLY1305 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a71119edfbe668d423e910b11c0efb712" name="a83132be2c4a6bf0453550bd1ae720006a71119edfbe668d423e910b11c0efb712"></a>IMB_AUTH_CHACHA20_POLY1305_SGL&#160;</td><td class="fielddoc"><p>AEAD CHACHA20 with SGL support </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a7c535075abfb0878168a00600a762fe0" name="a83132be2c4a6bf0453550bd1ae720006a7c535075abfb0878168a00600a762fe0"></a>IMB_AUTH_ZUC256_EIA3_BITLEN&#160;</td><td class="fielddoc"><p>256-EIA3/NIA3 (3GPP) </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a53ff331c62b01fb8427e63e18fc433f6" name="a83132be2c4a6bf0453550bd1ae720006a53ff331c62b01fb8427e63e18fc433f6"></a>IMB_AUTH_SNOW_V_AEAD&#160;</td><td class="fielddoc"><p>SNOW-V-AEAD </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ada7d3fc165b6855ae3e83467de9916b2" name="a83132be2c4a6bf0453550bd1ae720006ada7d3fc165b6855ae3e83467de9916b2"></a>IMB_AUTH_GCM_SGL&#160;</td><td class="fielddoc"><p>AES-GCM with SGL support </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a421294f9a35f87e796f96b48257e6dc2" name="a83132be2c4a6bf0453550bd1ae720006a421294f9a35f87e796f96b48257e6dc2"></a>IMB_AUTH_CRC32_ETHERNET_FCS&#160;</td><td class="fielddoc"><p>CRC32-ETHERNET-FCS </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a53ff8b335b5391fc33c80c076590de44" name="a83132be2c4a6bf0453550bd1ae720006a53ff8b335b5391fc33c80c076590de44"></a>IMB_AUTH_CRC32_SCTP&#160;</td><td class="fielddoc"><p>CRC32-SCTP </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ad3936131d6804e6c6aa3bd497ae675ab" name="a83132be2c4a6bf0453550bd1ae720006ad3936131d6804e6c6aa3bd497ae675ab"></a>IMB_AUTH_CRC32_WIMAX_OFDMA_DATA&#160;</td><td class="fielddoc"><p>CRC32-WIMAX-OFDMA-DATA </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a3a8aa07fe9f70ece22f9351db0f8bb31" name="a83132be2c4a6bf0453550bd1ae720006a3a8aa07fe9f70ece22f9351db0f8bb31"></a>IMB_AUTH_CRC24_LTE_A&#160;</td><td class="fielddoc"><p>CRC32-LTE-A </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a77ccdf9abd97310f6808c8cf12c1a395" name="a83132be2c4a6bf0453550bd1ae720006a77ccdf9abd97310f6808c8cf12c1a395"></a>IMB_AUTH_CRC24_LTE_B&#160;</td><td class="fielddoc"><p>CRC32-LTE-B </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a22e2e766cbec475508af01c6a722c2c3" name="a83132be2c4a6bf0453550bd1ae720006a22e2e766cbec475508af01c6a722c2c3"></a>IMB_AUTH_CRC16_X25&#160;</td><td class="fielddoc"><p>CRC16-X25 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006aa78e695260f8fe6bb56d242771624ccc" name="a83132be2c4a6bf0453550bd1ae720006aa78e695260f8fe6bb56d242771624ccc"></a>IMB_AUTH_CRC16_FP_DATA&#160;</td><td class="fielddoc"><p>CRC16-FP-DATA </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ab0f02ac14a03f137a83bb7d6dff539fc" name="a83132be2c4a6bf0453550bd1ae720006ab0f02ac14a03f137a83bb7d6dff539fc"></a>IMB_AUTH_CRC11_FP_HEADER&#160;</td><td class="fielddoc"><p>CRC11-FP-HEADER </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ac27de87b2687b1e2a293544be6d3fab9" name="a83132be2c4a6bf0453550bd1ae720006ac27de87b2687b1e2a293544be6d3fab9"></a>IMB_AUTH_CRC10_IUUP_DATA&#160;</td><td class="fielddoc"><p>CRC10-IUUP-DATA </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ae62fe411b683840a5f25c199b66c7f42" name="a83132be2c4a6bf0453550bd1ae720006ae62fe411b683840a5f25c199b66c7f42"></a>IMB_AUTH_CRC8_WIMAX_OFDMA_HCS&#160;</td><td class="fielddoc"><p>CRC8-WIMAX-OFDMA-HCS </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ab7f1372ade9da040caf195b13f2b79f0" name="a83132be2c4a6bf0453550bd1ae720006ab7f1372ade9da040caf195b13f2b79f0"></a>IMB_AUTH_CRC7_FP_HEADER&#160;</td><td class="fielddoc"><p>CRC7-FP-HEADER </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a88175070e077037332ad5cd5fdece46f" name="a83132be2c4a6bf0453550bd1ae720006a88175070e077037332ad5cd5fdece46f"></a>IMB_AUTH_CRC6_IUUP_HEADER&#160;</td><td class="fielddoc"><p>CRC6-IUUP-HEADER </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a67297eacd4913bd65a1aae650c3a22e3" name="a83132be2c4a6bf0453550bd1ae720006a67297eacd4913bd65a1aae650c3a22e3"></a>IMB_AUTH_GHASH&#160;</td><td class="fielddoc"><p>GHASH </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006ae95ecde8c47c53b5b104fdd43120b450" name="a83132be2c4a6bf0453550bd1ae720006ae95ecde8c47c53b5b104fdd43120b450"></a>IMB_AUTH_SM3&#160;</td><td class="fielddoc"><p>SM3 </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006abba78b645883f63bb73c9a8cdd9f738b" name="a83132be2c4a6bf0453550bd1ae720006abba78b645883f63bb73c9a8cdd9f738b"></a>IMB_AUTH_HMAC_SM3&#160;</td><td class="fielddoc"><p>SM3-HMAC </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a907d7a31b1ce4650bd7dce7a43a9800f" name="a83132be2c4a6bf0453550bd1ae720006a907d7a31b1ce4650bd7dce7a43a9800f"></a>IMB_AUTH_SM4_GCM&#160;</td><td class="fielddoc"><p>SM4-GCM </p>
</td></tr>
<tr><td class="fieldname"><a id="a83132be2c4a6bf0453550bd1ae720006a5d34120f8a1c5cde857baf32536868af" name="a83132be2c4a6bf0453550bd1ae720006a5d34120f8a1c5cde857baf32536868af"></a>IMB_AUTH_NUM&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="a203fa854f71a1cca79f3f3ec251a33cc" name="a203fa854f71a1cca79f3f3ec251a33cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a203fa854f71a1cca79f3f3ec251a33cc">&#9670;&#160;</a></span>IMB_KEY_SIZE_BYTES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a203fa854f71a1cca79f3f3ec251a33ccaa1eb9eb83fca5f5dd6578f27733eb390" name="a203fa854f71a1cca79f3f3ec251a33ccaa1eb9eb83fca5f5dd6578f27733eb390"></a>IMB_KEY_64_BYTES&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a203fa854f71a1cca79f3f3ec251a33ccaf3e82db9a8b5b1b229c201735938969d" name="a203fa854f71a1cca79f3f3ec251a33ccaf3e82db9a8b5b1b229c201735938969d"></a>IMB_KEY_128_BYTES&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a203fa854f71a1cca79f3f3ec251a33cca573d62aa6a04d9ce2b3c34e226846598" name="a203fa854f71a1cca79f3f3ec251a33cca573d62aa6a04d9ce2b3c34e226846598"></a>IMB_KEY_192_BYTES&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a203fa854f71a1cca79f3f3ec251a33ccac139e7555c9b30725359698833eb213a" name="a203fa854f71a1cca79f3f3ec251a33ccac139e7555c9b30725359698833eb213a"></a>IMB_KEY_256_BYTES&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="a6b93fe0c0d7cdc520e6b465ddd93ec3d" name="a6b93fe0c0d7cdc520e6b465ddd93ec3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b93fe0c0d7cdc520e6b465ddd93ec3d">&#9670;&#160;</a></span>IMB_SGL_STATE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#a6b93fe0c0d7cdc520e6b465ddd93ec3d">IMB_SGL_STATE</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a6b93fe0c0d7cdc520e6b465ddd93ec3daf6e77a48759ab366cc1160725ff4261e" name="a6b93fe0c0d7cdc520e6b465ddd93ec3daf6e77a48759ab366cc1160725ff4261e"></a>IMB_SGL_INIT&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a6b93fe0c0d7cdc520e6b465ddd93ec3da15c5d0aeeb9d5eb4e4c4878c837c5977" name="a6b93fe0c0d7cdc520e6b465ddd93ec3da15c5d0aeeb9d5eb4e4c4878c837c5977"></a>IMB_SGL_UPDATE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a6b93fe0c0d7cdc520e6b465ddd93ec3dab7a602903c0fbaad7ffb893cb2547975" name="a6b93fe0c0d7cdc520e6b465ddd93ec3dab7a602903c0fbaad7ffb893cb2547975"></a>IMB_SGL_COMPLETE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a6b93fe0c0d7cdc520e6b465ddd93ec3da2f0678ab7ad9bb30c040e0b3ee2fa408" name="a6b93fe0c0d7cdc520e6b465ddd93ec3da2f0678ab7ad9bb30c040e0b3ee2fa408"></a>IMB_SGL_ALL&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<a id="afd5f50bd2277b5f92f0ec786c8f066ab" name="afd5f50bd2277b5f92f0ec786c8f066ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd5f50bd2277b5f92f0ec786c8f066ab">&#9670;&#160;</a></span>IMB_STATUS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="intel-ipsec-mb_8h.html#afd5f50bd2277b5f92f0ec786c8f066ab">IMB_STATUS</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Job structure definitions </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066abaa562b01ade81e0196fc23cd79d534141" name="afd5f50bd2277b5f92f0ec786c8f066abaa562b01ade81e0196fc23cd79d534141"></a>IMB_STATUS_BEING_PROCESSED&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066aba6fcaccd3853c9e8cf3b402edc3e22089" name="afd5f50bd2277b5f92f0ec786c8f066aba6fcaccd3853c9e8cf3b402edc3e22089"></a>IMB_STATUS_COMPLETED_CIPHER&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066aba79df83a15cdafc2a6c79751457ae9792" name="afd5f50bd2277b5f92f0ec786c8f066aba79df83a15cdafc2a6c79751457ae9792"></a>IMB_STATUS_COMPLETED_AUTH&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066aba508a9f195acee09621542ca687ba2341" name="afd5f50bd2277b5f92f0ec786c8f066aba508a9f195acee09621542ca687ba2341"></a>IMB_STATUS_COMPLETED&#160;</td><td class="fielddoc"><p>COMPLETED_CIPHER | COMPLETED_AUTH </p>
</td></tr>
<tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066abaee85b6a8bc33e0b39001e9ff538540b7" name="afd5f50bd2277b5f92f0ec786c8f066abaee85b6a8bc33e0b39001e9ff538540b7"></a>IMB_STATUS_INVALID_ARGS&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066aba546465b9d4cfb1f9c98c864bf5ed51fb" name="afd5f50bd2277b5f92f0ec786c8f066aba546465b9d4cfb1f9c98c864bf5ed51fb"></a>IMB_STATUS_INTERNAL_ERROR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="afd5f50bd2277b5f92f0ec786c8f066aba0ef40895610ac6343d171f65be676a1d" name="afd5f50bd2277b5f92f0ec786c8f066aba0ef40895610ac6343d171f65be676a1d"></a>IMB_STATUS_ERROR&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a6541825066a8d2b8b3c7b6e2c4b28c83" name="a6541825066a8d2b8b3c7b6e2c4b28c83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6541825066a8d2b8b3c7b6e2c4b28c83">&#9670;&#160;</a></span>aes_cmac_subkey_gen_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_cmac_subkey_gen_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate AES-128-CMAC subkeys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_exp</td><td>Input expanded AES-128-CMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key1</td><td>Subkey 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key2</td><td>Subkey 2   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a6903e1e0dfb8fd75c2f556596f3efa1b" name="a6903e1e0dfb8fd75c2f556596f3efa1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6903e1e0dfb8fd75c2f556596f3efa1b">&#9670;&#160;</a></span>aes_cmac_subkey_gen_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_cmac_subkey_gen_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate AES-128-CMAC subkeys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_exp</td><td>Input expanded AES-128-CMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key1</td><td>Subkey 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key2</td><td>Subkey 2   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a730f18bd7cdcbbb995e24931307867fc" name="a730f18bd7cdcbbb995e24931307867fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a730f18bd7cdcbbb995e24931307867fc">&#9670;&#160;</a></span>aes_cmac_subkey_gen_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_cmac_subkey_gen_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate AES-128-CMAC subkeys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_exp</td><td>Input expanded AES-128-CMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key1</td><td>Subkey 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key2</td><td>Subkey 2   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a4dafe82f4933670f68e1bf34d55a691d" name="a4dafe82f4933670f68e1bf34d55a691d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4dafe82f4933670f68e1bf34d55a691d">&#9670;&#160;</a></span>aes_cmac_subkey_gen_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_cmac_subkey_gen_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>key2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate AES-128-CMAC subkeys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_exp</td><td>Input expanded AES-128-CMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key1</td><td>Subkey 1 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key2</td><td>Subkey 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae1e8e1b4425af520048a9e1fe5689e4d" name="ae1e8e1b4425af520048a9e1fe5689e4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1e8e1b4425af520048a9e1fe5689e4d">&#9670;&#160;</a></span>aes_gcm_dec_128_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_128_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-128 Decryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8e2bc4fff9de3c70ac140ff30e1cdce0" name="a8e2bc4fff9de3c70ac140ff30e1cdce0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e2bc4fff9de3c70ac140ff30e1cdce0">&#9670;&#160;</a></span>aes_gcm_dec_128_finalize_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_128_finalize_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End decryption of a AES-GCM-128 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8.   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a08603861ac18d1dce7b322b0c3fb69c5" name="a08603861ac18d1dce7b322b0c3fb69c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08603861ac18d1dce7b322b0c3fb69c5">&#9670;&#160;</a></span>aes_gcm_dec_128_finalize_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_128_finalize_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End decryption of a AES-GCM-128 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="add2f5aafaf55cd0e0b20b2b62fcb025d" name="add2f5aafaf55cd0e0b20b2b62fcb025d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add2f5aafaf55cd0e0b20b2b62fcb025d">&#9670;&#160;</a></span>aes_gcm_dec_128_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_128_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-128 Decryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a4464684ff4cf4e9cb978409ad350c4d6" name="a4464684ff4cf4e9cb978409ad350c4d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4464684ff4cf4e9cb978409ad350c4d6">&#9670;&#160;</a></span>aes_gcm_dec_128_update_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_128_update_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrypt a block of a AES-GCM-128 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2216e461e916668b70d547513b0cf26f" name="a2216e461e916668b70d547513b0cf26f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2216e461e916668b70d547513b0cf26f">&#9670;&#160;</a></span>aes_gcm_dec_128_update_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_128_update_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrypt a block of a AES-GCM-128 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5ccd87fbcfffc238fbcd1fc816eb06ee" name="a5ccd87fbcfffc238fbcd1fc816eb06ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ccd87fbcfffc238fbcd1fc816eb06ee">&#9670;&#160;</a></span>aes_gcm_dec_192_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_192_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-192 Decryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afa136a3c06d45e914d15415dee27f001" name="afa136a3c06d45e914d15415dee27f001"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa136a3c06d45e914d15415dee27f001">&#9670;&#160;</a></span>aes_gcm_dec_192_finalize_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_192_finalize_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End decryption of a AES-GCM-192 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8.   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0fd357a1794d78ac2168bc7eff0442ce" name="a0fd357a1794d78ac2168bc7eff0442ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fd357a1794d78ac2168bc7eff0442ce">&#9670;&#160;</a></span>aes_gcm_dec_192_finalize_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_192_finalize_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End decryption of a AES-GCM-192 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="acaff83c8ca568201805e0ada5a79f6e1" name="acaff83c8ca568201805e0ada5a79f6e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acaff83c8ca568201805e0ada5a79f6e1">&#9670;&#160;</a></span>aes_gcm_dec_192_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_192_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-192 Decryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a615c26f03ba08c8cde73cb074bf6b363" name="a615c26f03ba08c8cde73cb074bf6b363"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a615c26f03ba08c8cde73cb074bf6b363">&#9670;&#160;</a></span>aes_gcm_dec_192_update_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_192_update_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrypt a block of a AES-GCM-192 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a58455aec5650ecfc6077c69c97031f63" name="a58455aec5650ecfc6077c69c97031f63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58455aec5650ecfc6077c69c97031f63">&#9670;&#160;</a></span>aes_gcm_dec_192_update_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_192_update_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrypt a block of a AES-GCM-192 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac16384799933d4f7b11cb56d9c66f5da" name="ac16384799933d4f7b11cb56d9c66f5da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac16384799933d4f7b11cb56d9c66f5da">&#9670;&#160;</a></span>aes_gcm_dec_256_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_256_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-256 Decryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a791be274839adc3d26d9a32aa319dc3b" name="a791be274839adc3d26d9a32aa319dc3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a791be274839adc3d26d9a32aa319dc3b">&#9670;&#160;</a></span>aes_gcm_dec_256_finalize_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_256_finalize_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End decryption of a AES-GCM-256 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8.   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="adf7aa2e79dce7a9ed79134c086715fd0" name="adf7aa2e79dce7a9ed79134c086715fd0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf7aa2e79dce7a9ed79134c086715fd0">&#9670;&#160;</a></span>aes_gcm_dec_256_finalize_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_256_finalize_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End decryption of a AES-GCM-256 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afd8763c66749e9bc5e4e5eb2ac130e43" name="afd8763c66749e9bc5e4e5eb2ac130e43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd8763c66749e9bc5e4e5eb2ac130e43">&#9670;&#160;</a></span>aes_gcm_dec_256_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_256_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-256 Decryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a141303c38f4eed1245b542b6e9473296" name="a141303c38f4eed1245b542b6e9473296"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a141303c38f4eed1245b542b6e9473296">&#9670;&#160;</a></span>aes_gcm_dec_256_update_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_256_update_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrypt a block of a AES-GCM-256 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab1a51ae4b3cf3e8fdb618773d7b24b68" name="ab1a51ae4b3cf3e8fdb618773d7b24b68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1a51ae4b3cf3e8fdb618773d7b24b68">&#9670;&#160;</a></span>aes_gcm_dec_256_update_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_dec_256_update_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrypt a block of a AES-GCM-256 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext output. Decrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for decryption </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa17c919e873b6cfd7ac990977eef7601" name="aa17c919e873b6cfd7ac990977eef7601"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa17c919e873b6cfd7ac990977eef7601">&#9670;&#160;</a></span>aes_gcm_enc_128_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_128_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-128 Encryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a004c38b922d25d8631252854426ebf44" name="a004c38b922d25d8631252854426ebf44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a004c38b922d25d8631252854426ebf44">&#9670;&#160;</a></span>aes_gcm_enc_128_finalize_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_128_finalize_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End encryption of a AES-GCM-128 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8.   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af63ae2246c6d89b7d6630623948d3886" name="af63ae2246c6d89b7d6630623948d3886"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af63ae2246c6d89b7d6630623948d3886">&#9670;&#160;</a></span>aes_gcm_enc_128_finalize_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_128_finalize_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End encryption of a AES-GCM-128 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aad9e6c466a5274b974d20330f91add50" name="aad9e6c466a5274b974d20330f91add50"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad9e6c466a5274b974d20330f91add50">&#9670;&#160;</a></span>aes_gcm_enc_128_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_128_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-128 Encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="abb5570a161a90391e25b2016bc98381b" name="abb5570a161a90391e25b2016bc98381b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb5570a161a90391e25b2016bc98381b">&#9670;&#160;</a></span>aes_gcm_enc_128_update_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_128_update_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encrypt a block of a AES-GCM-128 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a7b12cabbfebb420022a19124aff78a3f" name="a7b12cabbfebb420022a19124aff78a3f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b12cabbfebb420022a19124aff78a3f">&#9670;&#160;</a></span>aes_gcm_enc_128_update_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_128_update_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encrypt a block of a AES-GCM-128 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9b462a3c00471e4338f0bae7d5abbda7" name="a9b462a3c00471e4338f0bae7d5abbda7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b462a3c00471e4338f0bae7d5abbda7">&#9670;&#160;</a></span>aes_gcm_enc_192_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_192_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-192 Encryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a4f76beaee47ffeeeb6f94a132f898339" name="a4f76beaee47ffeeeb6f94a132f898339"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f76beaee47ffeeeb6f94a132f898339">&#9670;&#160;</a></span>aes_gcm_enc_192_finalize_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_192_finalize_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End encryption of a AES-GCM-192 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8.   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5dcb5c37d1a5377967888e9b76208f8c" name="a5dcb5c37d1a5377967888e9b76208f8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5dcb5c37d1a5377967888e9b76208f8c">&#9670;&#160;</a></span>aes_gcm_enc_192_finalize_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_192_finalize_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End encryption of a AES-GCM-192 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="adec2f9778622b3e226f12bb326e75076" name="adec2f9778622b3e226f12bb326e75076"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adec2f9778622b3e226f12bb326e75076">&#9670;&#160;</a></span>aes_gcm_enc_192_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_192_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-192 Encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a174447b05661285b2729805f66bcef81" name="a174447b05661285b2729805f66bcef81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a174447b05661285b2729805f66bcef81">&#9670;&#160;</a></span>aes_gcm_enc_192_update_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_192_update_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encrypt a block of a AES-GCM-192 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a46c3df131f9e1e3ed1a283349c4072f7" name="a46c3df131f9e1e3ed1a283349c4072f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46c3df131f9e1e3ed1a283349c4072f7">&#9670;&#160;</a></span>aes_gcm_enc_192_update_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_192_update_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encrypt a block of a AES-GCM-192 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a52c0913f10dd41fea5fe328037561ff8" name="a52c0913f10dd41fea5fe328037561ff8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52c0913f10dd41fea5fe328037561ff8">&#9670;&#160;</a></span>aes_gcm_enc_256_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_256_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-256 Encryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a873a75e2175acd3741b5cfc41180fe2c" name="a873a75e2175acd3741b5cfc41180fe2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a873a75e2175acd3741b5cfc41180fe2c">&#9670;&#160;</a></span>aes_gcm_enc_256_finalize_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_256_finalize_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End encryption of a AES-GCM-256 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8.   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afcdedeabc7516e7506fa5c81d07f6fd8" name="afcdedeabc7516e7506fa5c81d07f6fd8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afcdedeabc7516e7506fa5c81d07f6fd8">&#9670;&#160;</a></span>aes_gcm_enc_256_finalize_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_256_finalize_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>End encryption of a AES-GCM-256 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a460ad1ebcb7df39e39c9aca214d8109c" name="a460ad1ebcb7df39e39c9aca214d8109c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a460ad1ebcb7df39e39c9aca214d8109c">&#9670;&#160;</a></span>aes_gcm_enc_256_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_256_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>auth_tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>auth_tag_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>AES-GCM-256 Encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authentication Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">auth_tag</td><td>Authenticated Tag output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">auth_tag_len</td><td>Authenticated Tag Length in bytes (must be a multiple of 4 bytes). Valid values are 16 (most likely), 12 or 8 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ad9592051cf26814ea5830826b553c547" name="ad9592051cf26814ea5830826b553c547"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9592051cf26814ea5830826b553c547">&#9670;&#160;</a></span>aes_gcm_enc_256_update_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_256_update_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encrypt a block of a AES-GCM-256 encryption message.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab831bdb2193a5adc54b51285f23ad5ce" name="ab831bdb2193a5adc54b51285f23ad5ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab831bdb2193a5adc54b51285f23ad5ce">&#9670;&#160;</a></span>aes_gcm_enc_256_update_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_enc_256_update_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encrypt a block of a AES-GCM-256 encryption message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Ciphertext output. Encrypt in-place is allowed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes for encryption </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8d225d08a5cf144208dacb155e192cb6" name="a8d225d08a5cf144208dacb155e192cb6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d225d08a5cf144208dacb155e192cb6">&#9670;&#160;</a></span>aes_gcm_init_128_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_init_128_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-128 Encryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authenticated Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aca7ab49c370f8f7cb82f93db199bfd1c" name="aca7ab49c370f8f7cb82f93db199bfd1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca7ab49c370f8f7cb82f93db199bfd1c">&#9670;&#160;</a></span>aes_gcm_init_128_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_init_128_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-128 Encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authenticated Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a757cd199a2e993c6610bbcdfc1da1ae4" name="a757cd199a2e993c6610bbcdfc1da1ae4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a757cd199a2e993c6610bbcdfc1da1ae4">&#9670;&#160;</a></span>aes_gcm_init_192_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_init_192_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-192 Encryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authenticated Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5bbf84135701f572ec2ecb0c0898848b" name="a5bbf84135701f572ec2ecb0c0898848b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bbf84135701f572ec2ecb0c0898848b">&#9670;&#160;</a></span>aes_gcm_init_192_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_init_192_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-192 Encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authenticated Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a99310b73bc9cde6b69b682e72cd0efc1" name="a99310b73bc9cde6b69b682e72cd0efc1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99310b73bc9cde6b69b682e72cd0efc1">&#9670;&#160;</a></span>aes_gcm_init_256_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_init_256_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-256 Encryption.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authenticated Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a09949bd5112eec14773dce239ca39033" name="a09949bd5112eec14773dce239ca39033"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09949bd5112eec14773dce239ca39033">&#9670;&#160;</a></span>aes_gcm_init_256_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_init_256_sse </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__context__data.html">gcm_context_data</a> *&#160;</td>
          <td class="paramname"><em>context_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t const *&#160;</td>
          <td class="paramname"><em>aad</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a <a class="el" href="structgcm__context__data.html" title="holds GCM operation context">gcm_context_data</a> structure to prepare for AES-GCM-256 Encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">context_data</td><td>GCM operation context data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 12 byte IV structure Internally, the library concatenates 0x00000001 to the IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad</td><td>Additional Authenticated Data (AAD) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>Length of AAD in bytes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3d7b8bc454b44abbeaa8f435280f8cb1" name="a3d7b8bc454b44abbeaa8f435280f8cb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d7b8bc454b44abbeaa8f435280f8cb1">&#9670;&#160;</a></span>aes_gcm_pre_128_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_pre_128_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pre-processes AES-GCM-128 key data.   </p>
<p>Prefills the gcm key data with key values for each round and the initial sub hash key for tag encoding</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to key data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5d02ac2586befa6cd3fd4921858c33fd" name="a5d02ac2586befa6cd3fd4921858c33fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d02ac2586befa6cd3fd4921858c33fd">&#9670;&#160;</a></span>aes_gcm_pre_128_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_pre_128_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pre-processes AES-GCM-128 key data. </p>
<p>Prefills the gcm key data with key values for each round and the initial sub hash key for tag encoding</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to key data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab71c95df9bd059e1a5e108d2513a0e2c" name="ab71c95df9bd059e1a5e108d2513a0e2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab71c95df9bd059e1a5e108d2513a0e2c">&#9670;&#160;</a></span>aes_gcm_pre_192_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_pre_192_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pre-processes AES-GCM-192 key data.   </p>
<p>Prefills the gcm key data with key values for each round and the initial sub hash key for tag encoding</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to key data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac0ebc1e7678bde75c25d5c0ec7ab2f7a" name="ac0ebc1e7678bde75c25d5c0ec7ab2f7a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0ebc1e7678bde75c25d5c0ec7ab2f7a">&#9670;&#160;</a></span>aes_gcm_pre_192_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_pre_192_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pre-processes AES-GCM-192 key data. </p>
<p>Prefills the gcm key data with key values for each round and the initial sub hash key for tag encoding</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to key data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a082773f106f399ca73afc56583805a8c" name="a082773f106f399ca73afc56583805a8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a082773f106f399ca73afc56583805a8c">&#9670;&#160;</a></span>aes_gcm_pre_256_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_pre_256_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pre-processes AES-GCM-256 key data.   </p>
<p>Prefills the gcm key data with key values for each round and the initial sub hash key for tag encoding</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to key data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a18fac8ea0f3acabb4d5ffab1152f477f" name="a18fac8ea0f3acabb4d5ffab1152f477f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18fac8ea0f3acabb4d5ffab1152f477f">&#9670;&#160;</a></span>aes_gcm_pre_256_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_pre_256_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pre-processes AES-GCM-256 key data. </p>
<p>Prefills the gcm key data with key values for each round and the initial sub hash key for tag encoding</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to key data </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aecf7277999128599c6cf8432b242ba36" name="aecf7277999128599c6cf8432b242ba36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aecf7277999128599c6cf8432b242ba36">&#9670;&#160;</a></span>aes_gcm_precomp_128_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_precomp_128_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Precomputation of AES-GCM-128 HashKey constants.   </p>
<p>Precomputation of HashKey&lt;&lt;1 mod poly constants (shifted_hkey_X and shifted_hkey_X_k).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">key_data</td><td>GCM key data   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a46253857355ddae8d17bab1403289d0f" name="a46253857355ddae8d17bab1403289d0f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46253857355ddae8d17bab1403289d0f">&#9670;&#160;</a></span>aes_gcm_precomp_128_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_precomp_128_sse </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Precomputation of AES-GCM-128 HashKey constants. </p>
<p>Precomputation of HashKey&lt;&lt;1 mod poly constants (shifted_hkey_X and shifted_hkey_X_k).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">key_data</td><td>GCM key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a6cb54cf9321dfb95af2eeb812f41fa8f" name="a6cb54cf9321dfb95af2eeb812f41fa8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cb54cf9321dfb95af2eeb812f41fa8f">&#9670;&#160;</a></span>aes_gcm_precomp_192_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_precomp_192_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Precomputation of AES-GCM-192 HashKey constants.   </p>
<p>Precomputation of HashKey&lt;&lt;1 mod poly constants (shifted_hkey_X and shifted_hkey_X_k).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">key_data</td><td>GCM key data   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a72d93e3249806eee186d465dc04c09e6" name="a72d93e3249806eee186d465dc04c09e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72d93e3249806eee186d465dc04c09e6">&#9670;&#160;</a></span>aes_gcm_precomp_192_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_precomp_192_sse </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Precomputation of AES-GCM-192 HashKey constants. </p>
<p>Precomputation of HashKey&lt;&lt;1 mod poly constants (shifted_hkey_X and shifted_hkey_X_k).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">key_data</td><td>GCM key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="abef922c52013630ad70273cef095c564" name="abef922c52013630ad70273cef095c564"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abef922c52013630ad70273cef095c564">&#9670;&#160;</a></span>aes_gcm_precomp_256_avx_gen4()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_precomp_256_avx_gen4 </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Precomputation of AES-GCM-256 HashKey constants.   </p>
<p>Precomputation of HashKey&lt;&lt;1 mod poly constants (shifted_hkey_X and shifted_hkey_X_k).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">key_data</td><td>GCM key data   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a18001897ea80cdce1f4f608b0922f767" name="a18001897ea80cdce1f4f608b0922f767"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18001897ea80cdce1f4f608b0922f767">&#9670;&#160;</a></span>aes_gcm_precomp_256_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_gcm_precomp_256_sse </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Precomputation of AES-GCM-256 HashKey constants. </p>
<p>Precomputation of HashKey&lt;&lt;1 mod poly constants (shifted_hkey_X and shifted_hkey_X_k).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">key_data</td><td>GCM key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aec7fe23c32ee94de88e5feba8f373a04" name="aec7fe23c32ee94de88e5feba8f373a04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec7fe23c32ee94de88e5feba8f373a04">&#9670;&#160;</a></span>aes_keyexp_128_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-128 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a4fc7f88bdb263ae0d45f37af7e4cb930" name="a4fc7f88bdb263ae0d45f37af7e4cb930"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4fc7f88bdb263ae0d45f37af7e4cb930">&#9670;&#160;</a></span>aes_keyexp_128_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-128 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9b7faaf3e5235d0a3c4b784f1035896d" name="a9b7faaf3e5235d0a3c4b784f1035896d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b7faaf3e5235d0a3c4b784f1035896d">&#9670;&#160;</a></span>aes_keyexp_128_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-128 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac7d7c889a25730d82ddee27bad7f0a63" name="ac7d7c889a25730d82ddee27bad7f0a63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7d7c889a25730d82ddee27bad7f0a63">&#9670;&#160;</a></span>aes_keyexp_128_enc_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_enc_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a84e76bdfb5a69dba7b515dd0b4fb4312" name="a84e76bdfb5a69dba7b515dd0b4fb4312"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84e76bdfb5a69dba7b515dd0b4fb4312">&#9670;&#160;</a></span>aes_keyexp_128_enc_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_enc_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a68e6a0e99a2091d3630bf3315fe9d95c" name="a68e6a0e99a2091d3630bf3315fe9d95c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68e6a0e99a2091d3630bf3315fe9d95c">&#9670;&#160;</a></span>aes_keyexp_128_enc_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_enc_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a270621a2f73134d8d021b5dd57ad6817" name="a270621a2f73134d8d021b5dd57ad6817"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a270621a2f73134d8d021b5dd57ad6817">&#9670;&#160;</a></span>aes_keyexp_128_enc_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_enc_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a32bcda3484b33b7d01124dbfeb9a229b" name="a32bcda3484b33b7d01124dbfeb9a229b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a32bcda3484b33b7d01124dbfeb9a229b">&#9670;&#160;</a></span>aes_keyexp_128_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_128_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption/decryption AES-128 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-128 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-128 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-128 decryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3bc56101b48217094086ae3120b0e086" name="a3bc56101b48217094086ae3120b0e086"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3bc56101b48217094086ae3120b0e086">&#9670;&#160;</a></span>aes_keyexp_192_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aba6dd2e633819829740cb7917ba6b1b2" name="aba6dd2e633819829740cb7917ba6b1b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba6dd2e633819829740cb7917ba6b1b2">&#9670;&#160;</a></span>aes_keyexp_192_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1f69c0a43de83f8fba19107a63c07831" name="a1f69c0a43de83f8fba19107a63c07831"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f69c0a43de83f8fba19107a63c07831">&#9670;&#160;</a></span>aes_keyexp_192_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5350b81ab574c990d6a5b9dc3b203c51" name="a5350b81ab574c990d6a5b9dc3b203c51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5350b81ab574c990d6a5b9dc3b203c51">&#9670;&#160;</a></span>aes_keyexp_192_enc_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_enc_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-192 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-192 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-192 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a460853c072adc3a0f431e861d3e5bba1" name="a460853c072adc3a0f431e861d3e5bba1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a460853c072adc3a0f431e861d3e5bba1">&#9670;&#160;</a></span>aes_keyexp_192_enc_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_enc_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-192 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-192 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-192 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a72807e8300208b22b5d532e274385127" name="a72807e8300208b22b5d532e274385127"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72807e8300208b22b5d532e274385127">&#9670;&#160;</a></span>aes_keyexp_192_enc_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_enc_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-192 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-192 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-192 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0a843e722f2af7a645340f6a98cfa4c2" name="a0a843e722f2af7a645340f6a98cfa4c2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a843e722f2af7a645340f6a98cfa4c2">&#9670;&#160;</a></span>aes_keyexp_192_enc_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_enc_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption AES-192 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-192 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-192 encryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a7681d777bb5f991ab59b5581bc854562" name="a7681d777bb5f991ab59b5581bc854562"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7681d777bb5f991ab59b5581bc854562">&#9670;&#160;</a></span>aes_keyexp_192_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_192_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption/decryption AES-192 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-192 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-192 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-192 decryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5b92ee3873b2e2cd02c9312b6040ee91" name="a5b92ee3873b2e2cd02c9312b6040ee91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b92ee3873b2e2cd02c9312b6040ee91">&#9670;&#160;</a></span>aes_keyexp_256_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af1f440855a00edbf95c124a1e1d18c37" name="af1f440855a00edbf95c124a1e1d18c37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1f440855a00edbf95c124a1e1d18c37">&#9670;&#160;</a></span>aes_keyexp_256_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a37e0f61656618413fcfd919dfe79ca45" name="a37e0f61656618413fcfd919dfe79ca45"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37e0f61656618413fcfd919dfe79ca45">&#9670;&#160;</a></span>aes_keyexp_256_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a22096fdd9b5d32095571f04a838d66a9" name="a22096fdd9b5d32095571f04a838d66a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22096fdd9b5d32095571f04a838d66a9">&#9670;&#160;</a></span>aes_keyexp_256_enc_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_enc_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a73da5625112ad845a3ec94ee84590f54" name="a73da5625112ad845a3ec94ee84590f54"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73da5625112ad845a3ec94ee84590f54">&#9670;&#160;</a></span>aes_keyexp_256_enc_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_enc_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9fb47323b270bffc87ad8e77985e827d" name="a9fb47323b270bffc87ad8e77985e827d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fb47323b270bffc87ad8e77985e827d">&#9670;&#160;</a></span>aes_keyexp_256_enc_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_enc_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate encryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afa369dee8def2ef620e7f33db86a3356" name="afa369dee8def2ef620e7f33db86a3356"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa369dee8def2ef620e7f33db86a3356">&#9670;&#160;</a></span>aes_keyexp_256_enc_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_enc_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5105a8d995cd8e4354c7de7ac94886cb" name="a5105a8d995cd8e4354c7de7ac94886cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5105a8d995cd8e4354c7de7ac94886cb">&#9670;&#160;</a></span>aes_keyexp_256_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_keyexp_256_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>enc_exp_keys</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dec_exp_keys</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate encryption/decryption AES-256 expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>AES-256 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">enc_exp_keys</td><td>AES-256 encryption expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dec_exp_keys</td><td>AES-256 decryption expansion key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afe460e4ff6a7b0c7a6edcc87e9976121" name="afe460e4ff6a7b0c7a6edcc87e9976121"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe460e4ff6a7b0c7a6edcc87e9976121">&#9670;&#160;</a></span>aes_xcbc_expand_key_avx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_xcbc_expand_key_avx </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k1_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate AES-128-XCBC expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Input AES-128-XCBC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k1_exp</td><td>k1 expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k2</td><td>k2 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k3</td><td>k3 key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac3f27672ce30d74f5cdc28f1903f68b1" name="ac3f27672ce30d74f5cdc28f1903f68b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3f27672ce30d74f5cdc28f1903f68b1">&#9670;&#160;</a></span>aes_xcbc_expand_key_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_xcbc_expand_key_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k1_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate AES-128-XCBC expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Input AES-128-XCBC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k1_exp</td><td>k1 expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k2</td><td>k2 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k3</td><td>k3 key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1308be648182642b8d73ff27d9344564" name="a1308be648182642b8d73ff27d9344564"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1308be648182642b8d73ff27d9344564">&#9670;&#160;</a></span>aes_xcbc_expand_key_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_xcbc_expand_key_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k1_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Generate AES-128-XCBC expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Input AES-128-XCBC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k1_exp</td><td>k1 expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k2</td><td>k2 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k3</td><td>k3 key   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aefb28e46620cbf65a2af3073b2401e40" name="aefb28e46620cbf65a2af3073b2401e40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aefb28e46620cbf65a2af3073b2401e40">&#9670;&#160;</a></span>aes_xcbc_expand_key_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void aes_xcbc_expand_key_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k1_exp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>k3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generate AES-128-XCBC expansion keys.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Input AES-128-XCBC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k1_exp</td><td>k1 expansion key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k2</td><td>k2 key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">k3</td><td>k3 key </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab8dc617feb010b0f4cd74fd9e1eabb5e" name="ab8dc617feb010b0f4cd74fd9e1eabb5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8dc617feb010b0f4cd74fd9e1eabb5e">&#9670;&#160;</a></span>alloc_mb_mgr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__MGR.html">IMB_MGR</a> * alloc_mb_mgr </td>
          <td>(</td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>flags</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Allocates memory for multi-buffer manager instance. </p>
<p>get_next_job returns a job object. This must be filled in and returned via submit_job before get_next_job is called again. After submit_job is called, one should call get_completed_job() at least once (and preferably until it returns NULL). get_completed_job and flush_job returns a job object. This job object ceases to be usable at the next call to get_next_job </p>
<p>For binary compatibility between library versions it is recommended to use this API.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">flags</td><td>multi-buffer manager flags IMB_FLAG_SHANI_OFF - disable use (and detection) of SHA extensions, currently SHANI is only available for SSE IMB_FLAG_GFNI_OFF - disable use (and detection) of Galois Field extensions.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to allocated memory for <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">NULL</td><td>on allocation error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a71a0353411f5307a2177ae9b2814f522" name="a71a0353411f5307a2177ae9b2814f522"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71a0353411f5307a2177ae9b2814f522">&#9670;&#160;</a></span>des_cfb_one()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void des_cfb_one </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t *&#160;</td>
          <td class="paramname"><em>iv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t *&#160;</td>
          <td class="paramname"><em>ks</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>DES-CFB Encrypt/Decrypt up to one block. </p>
<p>Processes only one buffer at a time. Designed to manage partial blocks of DOCSIS 3.1 SEC BPI.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>Plaintext/Ciphertext output </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">in</td><td>Plaintext/Ciphertext input </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv</td><td>Pointer to 8 byte IV </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ks</td><td>Pointer to DES key schedule </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of data in bytes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9911462fe4689c7420b827bb13fc3440" name="a9911462fe4689c7420b827bb13fc3440"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9911462fe4689c7420b827bb13fc3440">&#9670;&#160;</a></span>des_key_schedule()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int des_key_schedule </td>
          <td>(</td>
          <td class="paramtype">uint64_t *&#160;</td>
          <td class="paramname"><em>ks</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>DES key schedule set up. </p>
<p><em>ks</em> buffer needs to accommodate <em>DES_KEY_SCHED_SIZE</em> (128) bytes of data.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">ks</td><td>Destination buffer to accommodate DES key schedule </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Pointer to an 8 byte DES key</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">!0</td><td>error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae242d142065172898129f30e6bc40d8c" name="ae242d142065172898129f30e6bc40d8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae242d142065172898129f30e6bc40d8c">&#9670;&#160;</a></span>flush_job_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * flush_job_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Force processing until next job in queue is completed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no more jobs to process </dd></dl>

</div>
</div>
<a id="ac7aec54f653aeee2554ba980d62fd491" name="ac7aec54f653aeee2554ba980d62fd491"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7aec54f653aeee2554ba980d62fd491">&#9670;&#160;</a></span>flush_job_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * flush_job_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Force processing until next job in queue is completed.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no more jobs to process   </dd></dl>

</div>
</div>
<a id="a96b880b8a32b0466f880d4f22d95cc3b" name="a96b880b8a32b0466f880d4f22d95cc3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96b880b8a32b0466f880d4f22d95cc3b">&#9670;&#160;</a></span>flush_job_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * flush_job_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Force processing until next job in queue is completed.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no more jobs to process   </dd></dl>

</div>
</div>
<a id="a238b96cc36c0dc64798a1244b94add8b" name="a238b96cc36c0dc64798a1244b94add8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a238b96cc36c0dc64798a1244b94add8b">&#9670;&#160;</a></span>free_mb_mgr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void free_mb_mgr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>ptr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Frees memory allocated previously by <a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e" title="Allocates memory for multi-buffer manager instance.">alloc_mb_mgr()</a> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to allocated MB_MGR structure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ad85bdbf56038fd72ceda7e50deea586e" name="ad85bdbf56038fd72ceda7e50deea586e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad85bdbf56038fd72ceda7e50deea586e">&#9670;&#160;</a></span>get_completed_job_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * get_completed_job_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next completed job. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if next job not complete </dd></dl>

</div>
</div>
<a id="a693afd528fcc0809cc667b6c38de84dc" name="a693afd528fcc0809cc667b6c38de84dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a693afd528fcc0809cc667b6c38de84dc">&#9670;&#160;</a></span>get_completed_job_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * get_completed_job_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next completed job.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if next job not complete   </dd></dl>

</div>
</div>
<a id="a267a718472e0c1b6585402e81e44e7e9" name="a267a718472e0c1b6585402e81e44e7e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a267a718472e0c1b6585402e81e44e7e9">&#9670;&#160;</a></span>get_completed_job_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * get_completed_job_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next completed job.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if next job not complete   </dd></dl>

</div>
</div>
<a id="a49a3d54979188b3c68bdd621043125f7" name="a49a3d54979188b3c68bdd621043125f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49a3d54979188b3c68bdd621043125f7">&#9670;&#160;</a></span>get_next_job_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * get_next_job_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next available job. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to next free <a class="el" href="structIMB__JOB.html">IMB_JOB</a> in the queue </dd></dl>

</div>
</div>
<a id="a40c08ba2c387e24f2096b1213c46c812" name="a40c08ba2c387e24f2096b1213c46c812"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40c08ba2c387e24f2096b1213c46c812">&#9670;&#160;</a></span>get_next_job_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * get_next_job_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next available job.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to next free <a class="el" href="structIMB__JOB.html">IMB_JOB</a> in the queue   </dd></dl>

</div>
</div>
<a id="a055db1f6f16bc17724bdc64d0f313871" name="a055db1f6f16bc17724bdc64d0f313871"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a055db1f6f16bc17724bdc64d0f313871">&#9670;&#160;</a></span>get_next_job_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * get_next_job_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next available job.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to next free <a class="el" href="structIMB__JOB.html">IMB_JOB</a> in the queue   </dd></dl>

</div>
</div>
<a id="a174e5926a6f6bdf56c15c1e84eecb342" name="a174e5926a6f6bdf56c15c1e84eecb342"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a174e5926a6f6bdf56c15c1e84eecb342">&#9670;&#160;</a></span>imb_aead_burst_get_size()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_aead_burst_get_size </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>mb_mgr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a>&#160;</td>
          <td class="paramname"><em>cipher_mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned *&#160;</td>
          <td class="paramname"><em>out_burst_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves minimum burst size for good performance on AEAD algorithms. </p>
<p>Depending on the architecture used, this function returns the minimum burst size to be used for good performance on the AEAD burst API. The output burst size can be 1 (in case of a synchronous single-buffer implementation or 0 if the algorithm is not supported by the API).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mb_mgr</td><td>pointer to IMB MGR structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cipher_mode</td><td>cipher mode </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out_burst_size</td><td>pointer to store min burst size</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>operation status. </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">IMB_ERR_CIPHER_MODE</td><td>not supported <em>algo</em> </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_MBMGR</td><td>invalid <em>mb_mgr</em> pointer </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_BURST</td><td>invalid <em>out_burst_size</em> pointer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a57450d08e56185d460002d62b81ddb94" name="a57450d08e56185d460002d62b81ddb94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57450d08e56185d460002d62b81ddb94">&#9670;&#160;</a></span>imb_cipher_burst_get_size()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_cipher_burst_get_size </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>mb_mgr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#a3be1dfb4cbd4bd13dfdb2cf881f8334c">IMB_CIPHER_MODE</a>&#160;</td>
          <td class="paramname"><em>cipher_mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned *&#160;</td>
          <td class="paramname"><em>out_burst_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves minimum burst size for good performance on cipher algorithms. </p>
<p>Depending on the architecture used, this function returns the minimum burst size to be used for good performance on the cipher-only burst API. The output burst size can be 1 (in case of a synchronous single-buffer implementation or 0 if the algorithm is not supported by the API).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mb_mgr</td><td>pointer to IMB MGR structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cipher_mode</td><td>cipher mode </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out_burst_size</td><td>pointer to store min burst size</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>operation status. </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">IMB_ERR_CIPHER_MODE</td><td>not supported <em>algo</em> </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_MBMGR</td><td>invalid <em>mb_mgr</em> pointer </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_BURST</td><td>invalid <em>out_burst_size</em> pointer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aecdd69541b6d2a83d19ca804ef4b78d6" name="aecdd69541b6d2a83d19ca804ef4b78d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aecdd69541b6d2a83d19ca804ef4b78d6">&#9670;&#160;</a></span>imb_clear_mem()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_clear_mem </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>mem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Force clearing/zeroing of memory. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mem</td><td>Pointer to memory address to clear </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Size of memory to clear (in bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac2ec25aa86eed7f2dbe11c5f945bb00b" name="ac2ec25aa86eed7f2dbe11c5f945bb00b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2ec25aa86eed7f2dbe11c5f945bb00b">&#9670;&#160;</a></span>imb_get_arch_type_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_get_arch_type_string </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&#160;</td>
          <td class="paramname"><em>arch_type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&#160;</td>
          <td class="paramname"><em>description</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to get a string with the architecture type being used. </p>
<p>init_mb_mgr_XXX() must be called before this function call, where XXX is the desired architecture (can be auto).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">arch_type</td><td>string with architecture type </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">description</td><td>string with description of the arch type</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>operation status. </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_MBMGR</td><td>invalid <em>mb_mgr</em> pointer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a79f60b2bffbe91dac3e4f8b486e7ab10" name="a79f60b2bffbe91dac3e4f8b486e7ab10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79f60b2bffbe91dac3e4f8b486e7ab10">&#9670;&#160;</a></span>imb_get_errno()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_get_errno </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>mb_mgr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to get error status. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">mb_mgr</td><td>Pointer to multi-buffer manager</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">Integer</td><td>error type </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a725703ff6da6b402bde7041a2fabfddf" name="a725703ff6da6b402bde7041a2fabfddf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a725703ff6da6b402bde7041a2fabfddf">&#9670;&#160;</a></span>imb_get_feature_flags()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint64_t imb_get_feature_flags </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the bitmask with the features supported by the library, without having to allocate/initialize <a class="el" href="structIMB__MGR.html">IMB_MGR</a>;. </p>
<dl class="section return"><dt>Returns</dt><dd>Bitmask containing feature flags </dd></dl>

</div>
</div>
<a id="ac8379ada0d6ec030ebad9828fbea9459" name="ac8379ada0d6ec030ebad9828fbea9459"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8379ada0d6ec030ebad9828fbea9459">&#9670;&#160;</a></span>imb_get_mb_mgr_size()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> size_t imb_get_mb_mgr_size </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates necessary memory size for <a class="el" href="structIMB__MGR.html">IMB_MGR</a>. </p>
<dl class="section return"><dt>Returns</dt><dd>Size for <a class="el" href="structIMB__MGR.html">IMB_MGR</a> (aligned to 64 bytes) </dd></dl>

</div>
</div>
<a id="a61f664448a862fbb02e728ce518ff8e4" name="a61f664448a862fbb02e728ce518ff8e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61f664448a862fbb02e728ce518ff8e4">&#9670;&#160;</a></span>imb_get_strerror()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> const char * imb_get_strerror </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>errnum</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to get description for <em>errnum</em>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">errnum</td><td>error type</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">String</td><td>description of <em>errnum</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aee02bcb3a5e5eaee3632086f75c3d78d" name="aee02bcb3a5e5eaee3632086f75c3d78d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee02bcb3a5e5eaee3632086f75c3d78d">&#9670;&#160;</a></span>imb_get_version()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> unsigned imb_get_version </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get library version in numerical format. </p>
<p>Use <a class="el" href="intel-ipsec-mb_8h.html#ad9bcb21181d1e07b4f66d8bf0514c1a3">IMB_VERSION()</a> macro to compare this numerical version against known library version.</p>
<dl class="section return"><dt>Returns</dt><dd>library version number </dd></dl>

</div>
</div>
<a id="a4490e7b324236315f1a9e141b39f99f2" name="a4490e7b324236315f1a9e141b39f99f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4490e7b324236315f1a9e141b39f99f2">&#9670;&#160;</a></span>imb_get_version_str()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> const char * imb_get_version_str </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get library version in string format. </p>
<p>API definitions </p>
<dl class="section return"><dt>Returns</dt><dd>library version string </dd></dl>

</div>
</div>
<a id="a0f415a67fcedcb31c2cec879655c3b86" name="a0f415a67fcedcb31c2cec879655c3b86"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f415a67fcedcb31c2cec879655c3b86">&#9670;&#160;</a></span>imb_hash_burst_get_size()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_hash_burst_get_size </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>mb_mgr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a>&#160;</td>
          <td class="paramname"><em>algo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned *&#160;</td>
          <td class="paramname"><em>out_burst_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves minimum burst size for good performance on hash algorithms. </p>
<p>Depending on the architecture used, this function returns the minimum burst size to be used for good performance on the hash-only burst API. Note that this will not return a value for best performance, but the minimum needed to start maximizing the CPU core (i.e. enough buffers to utilize efficiently the CPU core resources, taking into account that when buffers have different sizes, a higher burst size is recommended).</p>
<p>The output burst size may also be 1 (in case of a synchronous single-buffer implementation or 0 if the algorithm is not supported by the API).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mb_mgr</td><td>pointer to IMB MGR structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">algo</td><td>hash algorithm </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out_burst_size</td><td>pointer to store min burst size</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>operation status. </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">IMB_ERR_HASH_ALGO</td><td>not supported <em>algo</em> </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_MBMGR</td><td>invalid <em>mb_mgr</em> pointer </td></tr>
    <tr><td class="paramname">IMB_ERR_NULL_BURST</td><td>invalid <em>out_burst_size</em> pointer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3c94d3ccb379f131a14d8eba3715e368" name="a3c94d3ccb379f131a14d8eba3715e368"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c94d3ccb379f131a14d8eba3715e368">&#9670;&#160;</a></span>imb_hmac_ipad_opad()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_hmac_ipad_opad </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>mb_mgr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#a83132be2c4a6bf0453550bd1ae720006">IMB_HASH_ALG</a>&#160;</td>
          <td class="paramname"><em>sha_type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>pkey</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>key_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ipad_hash</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>opad_hash</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Ipad Opad padding for HMAC. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mb_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sha_type</td><td>Type of HMAC_SHA from IMB_HASH_ALG enum </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">pkey</td><td>Pointer to a HMAC key </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key_len</td><td>Length of the HMAC key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">ipad_hash</td><td>Block-sized inner padding </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">opad_hash</td><td>Block-sized outer padding </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8faae8f9387983904125d862c4cac9ab" name="a8faae8f9387983904125d862c4cac9ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8faae8f9387983904125d862c4cac9ab">&#9670;&#160;</a></span>imb_quic_aes_gcm()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_quic_aes_gcm </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a>&#160;</td>
          <td class="paramname"><em>key_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a>&#160;</td>
          <td class="paramname"><em>cipher_dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dst_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>src_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>len_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>iv_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>aad_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>tag_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>tag_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>num_packets</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Batch of GCM encrypt/decrypt operations with the same key. </p>
<dl class="section note"><dt>Note</dt><dd>IV length of 12 bytes is assumed. </dd>
<dd>
If used out of place then AAD needs to be copied by the caller. </dd>
<dd>
For more info on key_data refer to IMB_AES128/192/256_GCM_PRE() API’s</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key_data</td><td>initialized key data (AES keys and hash keys) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key_size</td><td>key size (in bytes, see IMB_KEY_128_BYTES etc.) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cipher_dir</td><td>cipher direction (IMB_DIR_ENCRYPT / DECRYPT) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dst_ptr_array</td><td>array with destination pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">src_ptr_array</td><td>array with source pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len_array</td><td>array with message lengths in bytes </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv_ptr_array</td><td>array with IV pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_ptr_array</td><td>array with AAD pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>AAD length in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">tag_ptr_array</td><td>array with authentication TAG pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">tag_len</td><td>authentication TAG length in bytes </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">num_packets</td><td>number of packets in this batch </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a19dc5776bd2e96303a467c798dd7cf8a" name="a19dc5776bd2e96303a467c798dd7cf8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19dc5776bd2e96303a467c798dd7cf8a">&#9670;&#160;</a></span>imb_quic_chacha20_poly1305()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_quic_chacha20_poly1305 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#abdbf0bd32da801c52993cadb7a49c9ee">IMB_CIPHER_DIRECTION</a>&#160;</td>
          <td class="paramname"><em>cipher_dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dst_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>src_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>len_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>iv_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>aad_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>aad_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>tag_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>num_packets</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Batch of CHACHA20-POLY1305 encrypt/decrypt operations with the same key. </p>
<dl class="section note"><dt>Note</dt><dd>If used out of place then AAD needs to be copied by the caller.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>pointer to key </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cipher_dir</td><td>cipher direction (IMB_DIR_ENCRYPT / DECRYPT) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dst_ptr_array</td><td>array with destination pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">src_ptr_array</td><td>array with source pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">len_array</td><td>array with message lengths in bytes </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iv_ptr_array</td><td>array with IV pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_ptr_array</td><td>array with AAD pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">aad_len</td><td>AAD length in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">tag_ptr_array</td><td>array with authentication TAG pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">num_packets</td><td>number of packets in this batch </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a89f9807d10f3459444bb649caf9b64ca" name="a89f9807d10f3459444bb649caf9b64ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89f9807d10f3459444bb649caf9b64ca">&#9670;&#160;</a></span>imb_quic_hp_aes_ecb()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_quic_hp_aes_ecb </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>exp_key_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dst_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>src_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>num_packets</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="intel-ipsec-mb_8h.html#a203fa854f71a1cca79f3f3ec251a33cc">IMB_KEY_SIZE_BYTES</a>&#160;</td>
          <td class="paramname"><em>key_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Batch of AES-ECB encrypt/decrypt operations with the same key. </p>
<p>Sample size is fixed to 16 bytes (read from source pointers). Mask output size is fixed to 5 bytes (written to destination pointer). Cipher direction is fixed to ENCRYPT.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">exp_key_data</td><td>expanded AES encrypt keys </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dst_ptr_array</td><td>array with destination pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">src_ptr_array</td><td>array with source sample pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">num_packets</td><td>number of packets in this batch </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key_size</td><td>key size (in bytes, see IMB_KEY_128_BYTES etc.) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3ed913654b2d1ebf8cab875022d6da92" name="a3ed913654b2d1ebf8cab875022d6da92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ed913654b2d1ebf8cab875022d6da92">&#9670;&#160;</a></span>imb_quic_hp_chacha20()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_quic_hp_chacha20 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dst_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *const&#160;</td>
          <td class="paramname"><em>src_ptr_array</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>num_packets</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Batch of ChaCha20 encrypt operations with the same key. </p>
<p>Sample size is fixed to 16 bytes (read from source pointers). Mask output size is fixed to 5 bytes (written to destination pointer). Cipher direction is fixed to ENCRYPT.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Cipher key </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dst_ptr_array</td><td>array with destination pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">src_ptr_array</td><td>array with source sample pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">num_packets</td><td>number of packets in this batch </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a16fb370395bb6facfbbf7dc95af4c8a4" name="a16fb370395bb6facfbbf7dc95af4c8a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16fb370395bb6facfbbf7dc95af4c8a4">&#9670;&#160;</a></span>imb_self_test_get_cb()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_self_test_get_cb </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="intel-ipsec-mb_8h.html#a6fc0ee92d9cbee157810685d592cc13a">imb_self_test_cb_t</a> *&#160;</td>
          <td class="paramname"><em>cb_fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void **&#160;</td>
          <td class="paramname"><em>cb_arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves details of callback function to be invoked when running a self test. </p>
<p>It may be useful to check status of self test callback or daisy chain a few callbacks together.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">cb_fn</td><td>pointer to place pointer to self test callback function </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">cb_arg</td><td>pointer to place callback function argument</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status of <em>IMB_ERR</em> type </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>on success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a474ce25401eac36333b69f27c669849c" name="a474ce25401eac36333b69f27c669849c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a474ce25401eac36333b69f27c669849c">&#9670;&#160;</a></span>imb_self_test_set_cb()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int imb_self_test_set_cb </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="intel-ipsec-mb_8h.html#a6fc0ee92d9cbee157810685d592cc13a">imb_self_test_cb_t</a>&#160;</td>
          <td class="paramname"><em>cb_fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>cb_arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets callback function to be invoked when running a self test. </p>
<p>If <em>cb_fn</em> is NULL then self test callback functionality gets disabled.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cb_fn</td><td>pointer to self test callback function </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cb_arg</td><td>argument to be passed to the callback function <em>cb_fn</em> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status of <em>IMB_ERR</em> type </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>on success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3a825e903d1f8f8611b98b60fcaa5a81" name="a3a825e903d1f8f8611b98b60fcaa5a81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a825e903d1f8f8611b98b60fcaa5a81">&#9670;&#160;</a></span>imb_set_pointers_mb_mgr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__MGR.html">IMB_MGR</a> * imb_set_pointers_mb_mgr </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint64_t&#160;</td>
          <td class="paramname"><em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned&#160;</td>
          <td class="paramname"><em>reset_mgr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes <a class="el" href="structIMB__MGR.html">IMB_MGR</a> pointers to out-of-order managers with use of externally allocated memory. </p>
<p><a class="el" href="intel-ipsec-mb_8h.html#ac8379ada0d6ec030ebad9828fbea9459" title="Calculates necessary memory size for IMB_MGR.">imb_get_mb_mgr_size()</a> should be called to know how much memory should be allocated externally.</p>
<p>init_mb_mgr_XXX() must be called after this function call, whereas XXX is the desired architecture.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>a pointer to allocated memory </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">flags</td><td>multi-buffer manager flags IMB_FLAG_SHANI_OFF - disable use (and detection) of SHA extensions, currently SHANI is only available for SSE IMB_FLAG_GFNI_OFF - disable use (and detection) of Galois Field extensions.</td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">reset_mgr</td><td>if 0, <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure is not cleared, else it is.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </dd></dl>

</div>
</div>
<a id="ada304337e78ef5a462c97c1f8151ef67" name="ada304337e78ef5a462c97c1f8151ef67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada304337e78ef5a462c97c1f8151ef67">&#9670;&#160;</a></span>imb_set_session()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t imb_set_session </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structIMB__JOB.html">IMB_JOB</a> *&#160;</td>
          <td class="paramname"><em>job</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets up suite_id and session_id fields for selected cipher suite in provided <em>job</em> structure. </p>
<p>This is mandatory operation for BURST API as suite_id is used to speed up job dispatch process. This operation is optional but helpful for JOB API use case.</p>
<p>'session_id' field is for application use to optimize job set up process. If JOB structure provided by library for a new operation has same session ID as required for the next operation then only message pointers and sizes need to be set up by the application. All other session fields are guaranteed to be unmodified by the library:</p><ul>
<li>cipher mode</li>
<li>cipher direction</li>
<li>hash algorithm</li>
<li>key size</li>
<li>encrypt &amp; decrypt key pointers</li>
<li>suite_id If allocated JOB structure contains different session ID then all required session and crypto operation fields need to be set up.</li>
</ul>
<p>In connection oriented applications, a template filled-in job structure can be cached within connection structure and reused in submit operations.</p>
<p>For given set of parameters: cipher mode, cipher key size, cipher direction and authentication mode, suite_id field is the same.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="intel-ipsec-mb_8h.html#aabfad78b032b6b160e3ba51477132524" title="Submit multiple jobs to be processed after validating.">IMB_SUBMIT_BURST()</a> </dd>
<dd>
<a class="el" href="intel-ipsec-mb_8h.html#aa06f0e18794d4a95d16e61dfb1af70c4" title="Submit multiple jobs to be processed without validating.">IMB_SUBMIT_BURST_NOCHECK()</a> </dd>
<dd>
<a class="el" href="intel-ipsec-mb_8h.html#a3602a4ccaf1da4bf6787169370cef04f" title="Submit job for processing after validating.">IMB_SUBMIT_JOB()</a> </dd>
<dd>
<a class="el" href="intel-ipsec-mb_8h.html#af23c64e466272c5ae90fcf78fbcd0c3d" title="Submit job for processing without validating.">IMB_SUBMIT_JOB_NOCHECK()</a></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">job</td><td>pointer to prepared JOB structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Session ID value </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>on error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a6979ebea3cfa1a20874aa8830baf0b22" name="a6979ebea3cfa1a20874aa8830baf0b22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6979ebea3cfa1a20874aa8830baf0b22">&#9670;&#160;</a></span>imb_sm4_gcm_pre()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void imb_sm4_gcm_pre </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>mb_mgr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgcm__key__data.html">gcm_key_data</a> *&#160;</td>
          <td class="paramname"><em>key_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>SM4-GCM precompute</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mb_mgr</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Input SM4 key (16 bytes) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">key_data</td><td>GCM expanded key data </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2cbbd032835837fd0aa83b04f5337638" name="a2cbbd032835837fd0aa83b04f5337638"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cbbd032835837fd0aa83b04f5337638">&#9670;&#160;</a></span>init_mb_mgr_auto()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void init_mb_mgr_auto </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="intel-ipsec-mb_8h.html#ad138a5bf5508a0be5d3d61f018d5ebb6">IMB_ARCH</a> *&#160;</td>
          <td class="paramname"><em>arch</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Automatically initialize most performant Multi-buffer manager based on CPU features. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>Pointer to MB_MGR struct </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">arch</td><td>Pointer to arch enum to be set (can be NULL) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a71b6563b6b4c0c504cd9b8302a242cfa" name="a71b6563b6b4c0c504cd9b8302a242cfa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71b6563b6b4c0c504cd9b8302a242cfa">&#9670;&#160;</a></span>init_mb_mgr_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void init_mb_mgr_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize Multi-Buffer Manager structure. </p>
<p>Must be called before calling JOB/BURST API.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure For binary compatibility between library versions, it is recommended to allocate the <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure using the <a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e" title="Allocates memory for multi-buffer manager instance.">alloc_mb_mgr()</a> API </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a98932a3c61d798b0c8a560dcc3dce16f" name="a98932a3c61d798b0c8a560dcc3dce16f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98932a3c61d798b0c8a560dcc3dce16f">&#9670;&#160;</a></span>init_mb_mgr_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void init_mb_mgr_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize Multi-Buffer Manager structure.   </p>
<p>Must be called before calling JOB/BURST API.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure For binary compatibility between library versions, it is recommended to allocate the <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure using the <a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e" title="Allocates memory for multi-buffer manager instance.">alloc_mb_mgr()</a> API   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2ad1941fe5d77b8bb2d6445679e3b0c5" name="a2ad1941fe5d77b8bb2d6445679e3b0c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ad1941fe5d77b8bb2d6445679e3b0c5">&#9670;&#160;</a></span>init_mb_mgr_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void init_mb_mgr_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize Multi-Buffer Manager structure.   </p>
<p>Must be called before calling JOB/BURST API.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure For binary compatibility between library versions, it is recommended to allocate the <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure using the <a class="el" href="intel-ipsec-mb_8h.html#ab8dc617feb010b0f4cd74fd9e1eabb5e" title="Allocates memory for multi-buffer manager instance.">alloc_mb_mgr()</a> API   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3876dca52c5c210dd0827b2a472e6d0b" name="a3876dca52c5c210dd0827b2a472e6d0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3876dca52c5c210dd0827b2a472e6d0b">&#9670;&#160;</a></span>kasumi_f8_iv_gen()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int kasumi_f8_iv_gen </td>
          <td>(</td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>bearer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>iv_ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generation of KASUMI F8 Initialization Vector. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>COUNT (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bearer</td><td>BEARER (5 bits) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>DIRECTION (1 bit) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iv_ptr</td><td>Pointer to generated IV (8 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">-1</td><td>if one or more parameters are invalid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac886170fc4e70b467383fdf09f0724cf" name="ac886170fc4e70b467383fdf09f0724cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac886170fc4e70b467383fdf09f0724cf">&#9670;&#160;</a></span>kasumi_f9_iv_gen()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int kasumi_f9_iv_gen </td>
          <td>(</td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>fresh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>iv_ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generation of KASUMI F9 Initialization Vector. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>COUNT (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fresh</td><td>FRESH (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iv_ptr</td><td>Pointer to generated IV (8 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">-1</td><td>if one or more parameters are invalid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8b912812c65f4d3b592875cdd233704d" name="a8b912812c65f4d3b592875cdd233704d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b912812c65f4d3b592875cdd233704d">&#9670;&#160;</a></span>md5_one_block_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void md5_one_block_avx2 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>digest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Authenticate 64-byte data buffer with MD5.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">digest</td><td>Digest output (16 bytes)   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac7f4da2fc0601ad50851e7e43f53e0cf" name="ac7f4da2fc0601ad50851e7e43f53e0cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7f4da2fc0601ad50851e7e43f53e0cf">&#9670;&#160;</a></span>md5_one_block_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void md5_one_block_avx512 </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>digest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p></p>
<p>Authenticate 64-byte data buffer with MD5.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">digest</td><td>Digest output (16 bytes)   </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9d883a3a629240fe86efedd180294433" name="a9d883a3a629240fe86efedd180294433"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d883a3a629240fe86efedd180294433">&#9670;&#160;</a></span>md5_one_block_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> void md5_one_block_sse </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>digest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Authenticate 64-byte data buffer with MD5.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>64-byte data buffer </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">digest</td><td>Digest output (16 bytes) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8a540000c08366ad47d95e23ed5b2918" name="a8a540000c08366ad47d95e23ed5b2918"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a540000c08366ad47d95e23ed5b2918">&#9670;&#160;</a></span>queue_size_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t queue_size_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get number of jobs queued to be processed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of jobs in the queue </dd></dl>

</div>
</div>
<a id="a51c0426a4b57c9e7db2b091692dff472" name="a51c0426a4b57c9e7db2b091692dff472"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51c0426a4b57c9e7db2b091692dff472">&#9670;&#160;</a></span>queue_size_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t queue_size_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get number of jobs queued to be processed.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of jobs in the queue   </dd></dl>

</div>
</div>
<a id="a80f792744558de173ea97d722c58e5c1" name="a80f792744558de173ea97d722c58e5c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a80f792744558de173ea97d722c58e5c1">&#9670;&#160;</a></span>queue_size_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> uint32_t queue_size_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get number of jobs queued to be processed.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of jobs in the queue   </dd></dl>

</div>
</div>
<a id="a2cbdb64c0b305cb5af010f9c98f70a43" name="a2cbdb64c0b305cb5af010f9c98f70a43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cbdb64c0b305cb5af010f9c98f70a43">&#9670;&#160;</a></span>snow3g_f8_iv_gen()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int snow3g_f8_iv_gen </td>
          <td>(</td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>bearer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>iv_ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generation of SNOW3G F8 Initialization Vector. </p>
<p>Parameters are passed in Little Endian format and used to generate the IV in Big Endian format.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>COUNT (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bearer</td><td>BEARER (5 bits) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>DIRECTION (1 bit) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iv_ptr</td><td>Pointer to generated IV (16 bytes) in Big Endian format</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">-1</td><td>if one or more parameters are invalid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a93e7a99927bc37fb4cb03f966fa4ebdd" name="a93e7a99927bc37fb4cb03f966fa4ebdd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a93e7a99927bc37fb4cb03f966fa4ebdd">&#9670;&#160;</a></span>snow3g_f9_iv_gen()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int snow3g_f9_iv_gen </td>
          <td>(</td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>fresh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>iv_ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generation of SNOW3G F9 Initialization Vector. </p>
<p>Parameters are passed in Little Endian format and used to generate the IV in Big Endian format.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>COUNT (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fresh</td><td>FRESH (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>DIRECTION (1 bit) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iv_ptr</td><td>Pointer to generated IV (16 bytes) in Big Endian format</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">-1</td><td>if one or more parameters are invalid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8913995859e45005f8de57a3456c93cf" name="a8913995859e45005f8de57a3456c93cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8913995859e45005f8de57a3456c93cf">&#9670;&#160;</a></span>submit_job_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * submit_job_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing after validating. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed If NULL, <a class="el" href="intel-ipsec-mb_8h.html#a79f60b2bffbe91dac3e4f8b486e7ab10" title="API to get error status.">imb_get_errno()</a> can be used to check for potential error conditions </dd></dl>

</div>
</div>
<a id="a75cc0d090470e47cd8be04451ee31a68" name="a75cc0d090470e47cd8be04451ee31a68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75cc0d090470e47cd8be04451ee31a68">&#9670;&#160;</a></span>submit_job_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * submit_job_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing after validating.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed If NULL, <a class="el" href="intel-ipsec-mb_8h.html#a79f60b2bffbe91dac3e4f8b486e7ab10" title="API to get error status.">imb_get_errno()</a> can be used to check for potential error conditions   </dd></dl>

</div>
</div>
<a id="a72caaf8162ae6f802f7c1fe570afe42e" name="a72caaf8162ae6f802f7c1fe570afe42e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72caaf8162ae6f802f7c1fe570afe42e">&#9670;&#160;</a></span>submit_job_nocheck_avx2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * submit_job_nocheck_avx2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing without validating. </p>
<p>This is more performant but less secure than submit_job_xxx()</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed </dd></dl>

</div>
</div>
<a id="a5a95b9268508d68b9027df98167d22cd" name="a5a95b9268508d68b9027df98167d22cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a95b9268508d68b9027df98167d22cd">&#9670;&#160;</a></span>submit_job_nocheck_avx512()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * submit_job_nocheck_avx512 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing without validating.   </p>
<p>This is more performant but less secure than submit_job_xxx()</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed   </dd></dl>

</div>
</div>
<a id="a35e4c8a3d2eba8a612f021572621f98e" name="a35e4c8a3d2eba8a612f021572621f98e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35e4c8a3d2eba8a612f021572621f98e">&#9670;&#160;</a></span>submit_job_nocheck_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * submit_job_nocheck_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing without validating.   </p>
<p>This is more performant but less secure than submit_job_xxx()</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed   </dd></dl>

</div>
</div>
<a id="a7700e90058a74980bfd7d462a19d32a0" name="a7700e90058a74980bfd7d462a19d32a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7700e90058a74980bfd7d462a19d32a0">&#9670;&#160;</a></span>submit_job_sse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> <a class="el" href="structIMB__JOB.html">IMB_JOB</a> * submit_job_sse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structIMB__MGR.html">IMB_MGR</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Submit job for processing after validating.   </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to initialized <a class="el" href="structIMB__MGR.html">IMB_MGR</a> structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to completed <a class="el" href="structIMB__JOB.html">IMB_JOB</a> or NULL if no job completed If NULL, <a class="el" href="intel-ipsec-mb_8h.html#a79f60b2bffbe91dac3e4f8b486e7ab10" title="API to get error status.">imb_get_errno()</a> can be used to check for potential error conditions   </dd></dl>

</div>
</div>
<a id="a4931dd6b1b91456bfe885e28ada0aaf3" name="a4931dd6b1b91456bfe885e28ada0aaf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4931dd6b1b91456bfe885e28ada0aaf3">&#9670;&#160;</a></span>zuc_eea3_iv_gen()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int zuc_eea3_iv_gen </td>
          <td>(</td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>bearer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>iv_ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generation of ZUC-EEA3 Initialization Vector. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>COUNT (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bearer</td><td>BEARER (5 bits) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>DIRECTION (1 bit) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iv_ptr</td><td>Pointer to generated IV (16 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">-1</td><td>if one or more parameters are invalid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae3cefd0e992f1390110f0ef9a3aa510f" name="ae3cefd0e992f1390110f0ef9a3aa510f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3cefd0e992f1390110f0ef9a3aa510f">&#9670;&#160;</a></span>zuc_eia3_iv_gen()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="intel-ipsec-mb_8h.html#a986643689f56109161597f67eb9d7b40">IMB_DLL_EXPORT</a> int zuc_eia3_iv_gen </td>
          <td>(</td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>bearer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>iv_ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generation of ZUC-EIA3 Initialization Vector. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>COUNT (4 bytes in Little Endian) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bearer</td><td>BEARER (5 bits) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>DIRECTION (1 bit) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iv_ptr</td><td>Pointer to generated IV (16 bytes)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>success </td></tr>
    <tr><td class="paramname">-1</td><td>if one or more parameters are invalid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="intel-ipsec-mb_8h.html">intel-ipsec-mb.h</a></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
  </ul>
</div>
</body>
</html>
